2022/6/20/Dart/Enhanced enumsを使ってみよう

 

Dart2.17で導入されたEnhanced enumsの使い方をサンプルコードで確認しましょう。

まずこれまでのenumでは、それぞれの列挙型の値がint型・String型などのデータを保持しているような実装をしたい場合(下記サンプルではint型)、下記のように書く必要がありました。

enum OldVehicle{
  car,
  bus,
  bicycle,
}

extension OldVehicleX on OldVehicle{

  int get tires{
    switch(this){
      case OldVehicle.car:
        return 4;
      case OldVehicle.bus:
        return 6;
      case OldVehicle.bicycle:
        return 2;
    }
  }

  int get passengers{
    switch(this){
      case OldVehicle.car:
        return 5;