Flutterプログラミング

【アプリ開発入門】Flutter|Dartの列挙型を理解する

Flutter

こんにちは。ゲームプログラマーのメガネです。

この記事では、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#とほぼ同じですね。

コメント