logo header
logo header
logo header
logo header
  • 2015.01.16
  • 技術ブログ開発

Dartでenumが使えるようになりました

Dartのバージョン1.8から、試験的にenumが使えるようになっています。

Dart News & Updates: Dart 1.8: library improvements and experimental support for enums

現在(2015年1月16日時点)での最新安定バージョンは1.8.3となっており、enumが使用できます。

Macで、すでにHomebrewを使ってDartを導入している場合、
最新版に更新するには、コマンドラインからbrew upgrade dartを実行します。

バージョンを確認して、1.8.3になっていることを確認します。

enumを使用する

Dartでのenumは、以下のように、他の言語と同じような形で記述できます。

Dartは、Javaのenumのように厳密なクラスの型を持ち、Cのような数値としての評価はされません。

ですので、使用する際は変数の型としてenumの型を指定しますが、Dartの型指定はオプショナルなので、varでも使用できます。

enumの値とswitchで判定する文は、他の言語と同じように書くことができます。

enumの内容のリストを得る

Dartのenumでは、列挙された内容のリストを、valuesプロパティから得ることができます。

enumのインデックス値を得る

Dartのenumは、各要素がインデックス値を持っており、
その各要素のindexというプロパティから参照することができます。

Dartの標準仕様

Dartは、JavaScript(ECMAScript)の標準仕様を定めているEcmaインターナショナルという標準化団体によって標準化されています。

Ecmaインターナショナル - Wikipedia

このDartの標準仕様にも、enumの仕様が取り込まれています。

Dart News & Updates: Enums and Async primitives in Dart

次々と進化していくDartに、目が離せません。

※アイキャッチの画像は https://www.dartlang.org/logos/ こちらで配布されている画像をCC BY 3.0のライセンスに基づき利用させていただきました。

ともに世界をアップグレードできる、そんな日を夢見て。
Upgrade the World!