Định nghĩa enum đơn giản
Thuộc phần Logic và luồng điều khiển trong hành trình Dart của Coddy. Bài học 59 trên 65.
Bây giờ bạn đã hiểu enum là gì, hãy cùng học cách tạo enum trong Dart. Cú pháp rất đơn giản và tuân theo một mẫu cơ bản.
Để định nghĩa một enum, bạn dùng từ khóa enum, theo sau là tên enum và danh sách các giá trị bên trong dấu ngoặc nhọn:
enum Weather {
sunny,
cloudy,
rainy
}Mỗi giá trị trong enum được ngăn cách bằng dấu phẩy. Theo quy ước, các giá trị enum được viết bằng chữ thường. Tên enum nên bắt đầu bằng chữ cái viết hoa, theo quy ước đặt tên của Dart.
Sau khi định nghĩa một enum, bạn có thể dùng nó trong toàn bộ chương trình. Ví dụ, bạn có thể tạo enum cho vai trò người dùng, trạng thái trò chơi hoặc mức độ ưu tiên:
enum Priority {
low,
medium,
high
}Tạo một enum thật đơn giản! Về cơ bản, bạn đang tạo một kiểu dữ liệu mới với một tập hợp giá trị cố định, giúp code của bạn đáng tin cậy hơn và dễ hiểu hơn.
Thử thách
DễTạo một chương trình định nghĩa enum cho các loại ngôn ngữ lập trình khác nhau và minh họa cách sử dụng. Nhiệm vụ của bạn là:
- Định nghĩa một enum có tên
ProgrammingLanguagevới các giá trị sau:dart,python,javascript,javavàcpp - Tạo một biến có tên
currentLanguagethuộc kiểuProgrammingLanguagevà gán giá trịProgrammingLanguage.dartcho biến đó - Tạo một biến khác có tên
nextLanguagethuộc kiểuProgrammingLanguagevà gán giá trịProgrammingLanguage.pythoncho biến đó - In ra ngôn ngữ hiện tại theo đúng định dạng:
Currently learning: ProgrammingLanguage.dart - In ra ngôn ngữ tiếp theo theo đúng định dạng:
Next to learn: ProgrammingLanguage.python - Đổi
currentLanguagethànhProgrammingLanguage.javascript - In ra ngôn ngữ hiện tại đã cập nhật theo đúng định dạng:
Updated current language: ProgrammingLanguage.javascript
Chương trình của bạn cần minh họa cú pháp đúng để định nghĩa enum bằng từ khóa enum, khai báo biến thuộc kiểu enum và truy cập các giá trị enum bằng ký hiệu chấm. Hãy tuân theo quy ước đặt tên của Dart, trong đó tên enum bắt đầu bằng chữ in hoa và các giá trị enum được viết bằng chữ thường.
Tự làm thử
// TODO: Định nghĩa enum ProgrammingLanguage tại đây
void main() {
// TODO: Viết code của bạn tại đây
// 1. Tạo biến currentLanguage và gán giá trị ProgrammingLanguage.dart
// 2. Tạo biến nextLanguage và gán giá trị ProgrammingLanguage.python
// 3. In ra ngôn ngữ hiện tại theo định dạng yêu cầu
// 4. In ra ngôn ngữ tiếp theo theo định dạng yêu cầu
// 5. Cập nhật currentLanguage thành ProgrammingLanguage.javascript
// 6. In ra ngôn ngữ hiện tại sau khi cập nhật theo định dạng yêu cầu
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Logic và luồng điều khiển
1Thao tác nâng cao với danh sách
Thuộc tính danh sách: đầu và cuốiTrạng thái danh sách: isEmpty và isNotEmpĐảo ngược danh sáchThêm vào danh sách: insertXóa khỏi danh sách: removeWhereTìm trong danh sách: indexOfSắp xếp danh sáchXáo trộn danh sáchÔn tập: trình sắp xếp danh sách4Thao tác nâng cao với Map
Duyệt qua MapKiểm tra khóa và giá trịCác thuộc tính của Map: khóa và giá trịThêm có điều kiện: putIfAbsentXóa mục khỏi MapMap lồng nhauÔn tập: Cập nhật kho hàng2Thao tác hàm trên danh sách
Biến đổi bằng 'map'Lọc bằng 'where'Dùng '.toList()'Kiểm tra điều kiện bằng 'any'Điều kiện với 'every'Tìm phần tử bằng 'firstWhere'Ôn tập: lọc dữ liệu5Dự án: Tính tiền giỏ hàng
Thiết lập dự ánThêm mặt hàng vào giỏ8Dự án: Trình phân tích văn bản đơn giản
Tổng quan và thiết lập dự ánĐếm ký tự3Tập hợp
Tập hợp là gì?Tạo tập hợpThêm và xóa phần tử khỏi tập hợpKiểm tra phần tử trong tập hợpChuyển danh sách thành tập hợpPhép hợp của các tập hợpPhép giao của các tập hợpPhép hiệu của các tập hợpÔn tập: danh sách khách mời không trùng lặp6Xử lý lỗi cơ bản
Ngoại lệ là gì?Khối lệnh 'try-catch'Bắt ngoại lệ bằng 'on'Khối lệnh 'finally'Ném ngoại lệÔn tập: phép chia an toàn9Kiểu liệt kê (enum)
Enum là gì?Định nghĩa enum đơn giảnDùng enum với biếnEnum trong câu lệnh switchÔn tập: Đèn giao thôngTự luyện tập: Trình biên dịch Dart online