Dart 枚举

2023/6/6

# Dart 枚举

枚举是数量固定的常量值,通过 enum 关键字声明。

enum Color {red, green, blue}
1

枚举的 values 常量,可以获取所有枚举值列表

List<Color> colors = Color.values;
1

可以通过 index 获取值的索引

assert(Color.green.index == 1);
1

枚举示例代码如下:

enum Color { red, green, blue }

void main() {
  // 通过 index 返回枚举中具体常量的值
  print(Color.green.index);

  // 通过 values 返回常量列表
  print(Color.values);
  List<Color> colors = Color.values;
  print(colors);

  // 通过下标访问列表中的内容
  print(colors[0]);

  // 通过 forEach 去遍历列表的内容
  colors.forEach((element) {
    print('value: $element, index: ${element.index}');
  });
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19