こんにちは。ゲームプログラマーのメガネです。
この記事では、Dartの列挙型(enum)を解説します。
列挙型の作り方
列挙型はenum
キーワード、型名の順に定義します。
{}
の中にカンマ区切りで名前をどんどん書いていきます。
enum DogType {
akita,
doberman,
shiba,
}
列挙型の使い方
使うときはenum型名.名前
と書きます。
void main() {
var dogType = DogType.shiba;
}
switch文で使うと便利です。
void main() {
switch (dogType) {
case DogType.akita:
break;
case DogType.doberman:
break;
case DogType.shiba:
break;
}
}
配列のインデックスとしても利用できます。
void main() {
var names = ['akita', 'doberman', 'shiba'];
print(names[DogType.shiba.index]);
}
名前はexternsion
でも設定できます。
extension DogTypeExtension on DogType {
static final names = {
DogType.akita: 'akita',
DogType.doberman: 'doberman',
DogType.shiba: 'shiba',
};
String get typeName => names[this]!;
}
void main() {
print(DogType.shiba.name);
}
まとめ
Dartの列挙型を解説しました。C++やC#とほぼ同じですね。
コメント