Enum di Dart
Penjelasan
Enum mendefinisikan sekumpulan nilai konstan bernama yang tetap (fixed set of values) — cocok untuk merepresentasikan pilihan terbatas seperti status atau kategori. Sejak Dart 2.17, enum juga bisa "enhanced" — punya constructor, field, dan method sendiri seperti class biasa, bukan cuma daftar nama kosong.
Contoh Konsep
enum StatusPesanan { menunggu, diproses, selesai, dibatalkan }
void main() {
var status = StatusPesanan.diproses;
print(status); // StatusPesanan.diproses
print(status.name); // "diproses"
print(StatusPesanan.values); // daftar semua nilai enum
switch (status) {
case StatusPesanan.menunggu:
print("Sedang menunggu");
break;
case StatusPesanan.diproses:
print("Sedang diproses");
break;
default:
print("Status lain");
}
}
Praktikum
Buat enum Ukuran dengan nilai kecil, sedang, besar. Buat variabel bertipe Ukuran, lalu pakai switch untuk mencetak deskripsi berbeda untuk tiap nilai.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
`.name` mengembalikan nama enum sebagai String (mis. "diproses"), sedangkan mencetak enum langsung menghasilkan "NamaEnum.diproses" — pakai `.name` kalau kamu cuma butuh teksnya untuk ditampilkan ke pengguna.