Bahasa Dart Programming : Belajar Set

Dhe997

Set

Selanjutnya kita akan membahas jenis collection yang kedua, yaitu Set

Set merupakan sebuah collection yang hanya dapat menyimpan nilai yang unik. Ini akan berguna ketiga Anda tidak ingin ada data yang sama alias duplikasi dalam sebuah collection. Kita bisa mendeklarasikan Set dengan beberapa cara berikut:


  1. var numberSet = {1, 4, 6};

  2. Set<int> anotherSet = new Set.from([1, 4, 6, 4, 1]);



Perhatikan kode di atas. Di sana terdapat beberapa angka yang duplikat, yaitu angka 1 dan 4. Silakan tampilkan pada konsol dan lihat hasilnya.


  1. print(anotherSet);

  2.  

  3. // Output: {1, 4, 6}



Secara otomatis Set akan membuang angka yang sama, sehingga hasilnya adalah {1, 4, 6}.
Untuk menambahkan data ke dalam Set kita dapat memanfaatkan fungsi add() atau addAll().


  1. numberSet.add(6);

  2. numberSet.addAll({2, 2, 3});



Fungsi add akan menambah satu item ke dalam Set, sementara addAll digunakan untuk menambahkan beberapa item sekaligus. Nilai yang duplikat akan diabaikan.
Lalu gunakan fungsi remove() untuk menghapus objek di dalam set yang diinginkan.


  1. numberSet.remove(3);



Kode di atas akan menghapus nilai 3 di dalam Set, bukan indeks ke-3.
Kemudian untuk menampilkan data pada indeks tertentu, gunakanlah fungsi elementAt().


  1. var numberSet = {1, 4, 6};

  2.  

  3. numberSet.add(6);

  4. numberSet.addAll({2, 2, 3});

  5. numberSet.remove(3);

  6.   

  7. print(numberSet.elementAt(2));

  8.  

  9. // Output: 6



Selain itu, Dart juga memiliki fungsi union dan intersection untuk mengetahui gabungan dan irisan dari 2 (dua) buah Set. Sebagai contoh:


  1. var setA = {1, 2, 4, 5};

  2. var setB = {1, 5, 7};

  3.  

  4. var union = setA.union(setB);

  5. var intersection = setA.intersection(setB);

  6.  

  7. print(union);

  8. print(intersection);

  9.  

  10. // union: {1, 2, 4, 5, 7}

  11. // intersection: {1, 5}


Posting Komentar

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.