news

Mendalami Metode Pengundian dan Algoritma di Balik Live Draw Sydney untuk Memahami Cara Kerjanya   Membangun Strategi Bermain Togel Hong Kong yang Efektif di Hongkongpools   Membongkar Rahasia Live Draw SGP: Keajaiban Angka Terungkap   How Perform Blackjack Online   Security Services Internet – At Your Service   Online Video Slots For Convenience   A Can It The Discounted Huge Mega Slot Machine Bank   The Largest Casino For Some   Marvel Comic Heroes Slot Machine Game Overview   Evolusi Permainan Slot  

Selasa, 16 Juni 2020

Belajar Bahasa Pemrograman Dart : Enumerated Types

Enumerated Types

Bagaimana kita bisa menyimpan banyak nilai konstan di satu tempat dan menanganinya secara bersamaan? 

Solusinya, Dart menyediakan EnumsEnum mewakili kumpulan konstan yang membuat kode kita lebih jelas dan mudah dibaca.


  1. enum Rainbow {

  2.   red, orange, yellow, green, blue, indigo, violet

  3. }

  4.  

  5. enum Status {

  6.   Todo, In_Progress, In_Review, Done

  7. }





Enum pada Dart memiliki beberapa property bawaan yang dapat kita gunakan untuk menampilkan seluruh nilai dalam bentuk list serta menampilkan item dan indeks dari item tersebut.


  1. print(Rainbow.values);

  2. print(Rainbow.blue);

  3. print(Rainbow.orange.index);





Ketika kode di atas dijalankan, maka konsol akan tampil seperti berikut:


  1. [Rainbow.red, Rainbow.orange, Rainbow.yellow, Rainbow.green, Rainbow.blue, Rainbow.indigo, Rainbow.violet]

  2. Rainbow.blue

  3. 1



Kita juga bisa menggunakan enum ke dalam switch statements. Namun kita perlu menangani semua kemungkinan nilai enum yang Ada.


  1. var taskStatus = Status.In_Progress;

  2.  

  3. switch(taskStatus) {

  4.   case Status.Todo:

  5.     print('Task is still in To do');

  6.     break;

  7.   case Status.In_Progress:

  8.     print('Task is in progress');

  9.     break;

  10.   case Status.In_Review:

  11.     print('Task is currently under review');

  12.     break;

  13.   case Status.Done:

  14.     print('Task is done');

  15.     break;

  16. }