列舉用於定義命名常數值,使用enum
關鍵字宣告列舉型別。
語法
enum enum_name {
enumeration list
}
其中,
enum_name
指定列舉型別名稱;enumeration list
是以逗號分隔的識別符號列表;列舉列表中的每個符號代表一個整數值,一個大於它之前的符號。預設情況下,第一個列舉符號的值為0
。
範例
enum Status {
none,
running,
stopped,
paused
}
範例程式碼
enum Status {
none,
running,
stopped,
paused
}
void main() {
print(Status.values);
Status.values.forEach((v) => print('value: $v, index: ${v.index}'));
print('running: ${Status.running}, ${Status.running.index}');
print('running index: ${Status.values[1]}');
}
執行上面範例程式碼,得到以下結果 -
[Status.none, Status.running, Status.stopped, Status.paused]
value: Status.none, index: 0
value: Status.running, index: 1
value: Status.stopped, index: 2
value: Status.paused, index: 3
running: Status.running, 1
running index: Status.running