Sets
Selanjutnya kita akan membahas objek turunan yang kedua, yaitu Set. Set merupakan sebuah collection yang hanya dapat menyimpan nilai yang unik. Ini akan berguna ketika Anda menginginkan tidak ada data yang sama atau duplikasi dalam sebuah collection. Kita bisa mendeklarasikan sebuah Set dengan fungsi setOf.
- val integerSet = setOf(1, 2, 4, 2, 1, 5)
Perhatikan kode di atas. Di sana terdapat beberapa angka yang duplikat, yaitu angka 1 dan 2. Silakan tampilkan pada konsol dan lihat hasilnya.
- println(integerSet)
- // Output: [1, 2, 4, 5]
Secara otomatis fungsi setOf akan membuang angka yang sama, sehingga hasilnya adalah [1, 2, 4, 5]. Selain itu urutan pada Set bukanlah sesuatu yang penting, sehingga apabila kita bandingkan dua buah Set yang memiliki nilai yang sama dan urutan yang berbeda, akan tetap dianggap sama.
- val setA = setOf(1, 2, 4, 2, 1, 5)
- val setB = setOf(1, 2, 4, 5)
- println(setA == setB)
- // Output: true
Kita juga dapat melakukan pengecekan apakah sebuah nilai ada di dalam Set dengan menggunakan kata kunci in.
- print(5 in setA)
- // Output: true
Kemudian ada juga fungsi union dan intersect untuk mengetahui gabungan dan irisan dari 2 (dua) buah Set. Sebagai contoh:
- val setC = setOf(1, 5, 7)
- val union = setA.union(setC)
- val intersect = setA.intersect(setC)
- println(union)
- println(intersect)
- // union: [1, 2, 4, 5, 7]
- // intersect: [1, 5]
Informasi Tambahan: Pada Set kita bisa menambah dan menghapus item namun tak bisa mengubah nilai seperti pada List.
|