- Learning Dart(Second Edition)
- Ivo Balbaert Dzenan Ridjanovic
- 172字
- 2021-07-16 19:47:07
Using enums
Often, you encounter a situation where a variable can only take on a limited number of "named values," like the days in a week or the four compass directions. This concept is known as an enum and it was introduced in Dart in version 1.8. Here, is an example (see enums.dart
):
enum Direction {North, South, East, West} main() { Direction dir = Direction.South; if (dir == Direction.South) { print("Let's go on a trip"); } switch (dir) { case Direction.North: print("Too cold up there!"); break; case Direction.South: print("Let's go on a trip!"); break; case Direction.West: print("Better stay home!"); break; case Direction.East: print("Which eastern country do you want to visit?"); break; } }
This prints out:
Let's go on a trip Let's go on a trip!
The nice thing about enums is that they not only clarify but shorten your code. When used in a switch statement, the Dart tools can warn you when one or more of the cases are missing, so they ensure that all the possible values are handled.