枚举类型

最后更新于:2022-04-02 04:59:14

[TOC] 枚举类型,通常称为枚举或枚举类型,是一种特殊类型的类,用于表示固定数量的常量值。 ## 使用枚举 使用enum关键字声明一个枚举类型: ~~~ enum Color { red, green, blue } ~~~ 枚举中的每个值都有一个索引getter,它返回enum声明中值的从0开始的位置。例如,第一个值有索引0,第二个值有索引1。 ~~~ assert(Color.red.index == 0); assert(Color.green.index == 1); assert(Color.blue.index == 2); ~~~ 要获取枚举中所有值的列表,请使用enum的values 常量。 ~~~ List colors = Color.values; assert(colors[2] == Color.blue); ~~~ 您可以在switch语句中使用enum,如果switch的case不处理enum的所有值,将会报一个警告消息: ~~~ var aColor = Color.blue; switch (aColor) { case Color.red: print('Red as roses!'); break; case Color.green: print('Green as grass!'); break; default: // Without this, you see a WARNING. print(aColor); // 'Color.blue' } ~~~ 枚举类型有以下限制: * 您不能子类化、混合或实现枚举。 * 不能显式实例化一个枚举 更多信息参见[Dart语言的特性]
';