Pelajaran 25
Enum
Simple enum, enhanced enum (Dart 3), dot shorthand.
Pahami konsepnya
Simple enum: enum Warna { merah, hijau, biru }. Enhanced enum (Dart 3) boleh punya field, constructor, dan method: enum Level with Comparable { bronze(1), silver(2), gold(3); final int nilai; const Level(this.nilai); }. Dot shorthand: .merah menggantikan Warna.merah bila tipe diketahui.
Coba contoh kode
enum Level {
bronze(1, "Bronze"),
silver(2, "Silver"),
gold(3, "Gold");
final int nilai;
final String label;
const Level(this.nilai, this.label);
@override
String toString() => label;
}
void main() {
print(Level.gold); // Gold
print(Level.gold.nilai); // 3
print(Level.values);
}Enhanced enum punya constructor const, field, dan toString override. Level.values memberi semua anggota.
Latihan singkat
Uji: Level.values.length — harus `3`.