Kelas Java LinkedHashSet: Panduan Ramah untuk Pemula
Pengenalan
Helo di sana, penyihir Java masa depan! Hari ini, kita akan melakukan perjalanan yang menarik ke dunia Java LinkedHashSet. Jangan khawatir jika anda belum pernah menulis satu baris kod sebelum ini – saya akan menjadi pemandu ramah anda, dan kita akan menjelajahi topik ini bersama-sama, langkah demi langkah.
Bayangkan anda sedang mengutip rakaman unik untuk album anda, tetapi anda ingin untuk mengingati urutan yang anda dapati mereka. Itu hampir seperti apa yang LinkedHashSet lakukan di Java – ia adalah sebuah kumpulan yang menyimpan elemen unik (seperti rakaman anda) dan mengingati urutan anda menambahkannya. Keren, kan?
Mari kita melompat kedalam dan lihat bagaimana kumpulan magis ini bekerja!
Pengisytiharan Kelas
Di Java, LinkedHashSet adalah sebahagian dari paket java.util. Untuk menggunakannya, kita perlu untuk mengimportnya terlebih dahulu. Ini cara kita melakukannya:
import java.util.LinkedHashSet;
Sekarang, mari kita cipta LinkedHashSet pertama kita:
LinkedHashSet<String> rakamanSaya = new LinkedHashSet<>();
Dalam contoh ini, kita telah mencipta satu LinkedHashSet yang akan menyimpan objek String. Bahagian
Parameter
LinkedHashSet tidak mempunyai parameter khusus atas nama sendiri, tetapi ia mewarisi beberapa dari kelas induknya. Yang paling penting adalah:
- initialCapacity: Kapasiti awal LinkedHashSet.
- loadFactor: ukuran berapa penuh LinkedHashSet boleh menjadi sebelum ia diubah ukurannya.
Jangan risau terlalu banyak tentang ini untuk masa ini. Java mengatur nilai lalai yang baik, jadi anda tidak perlu untuk menentukan mereka kecuali anda melakukan sesuatu yang sangat khusus.
Konstruktor Kelas
LinkedHashSet menyediakan beberapa konstruktor. Mari kita lihat yang paling umum:
-
Konstruktor lalai:
LinkedHashSet<String> set1 = new LinkedHashSet<>();
Ini mencipta satu LinkedHashSet kosong dengan kapasiti awal lalai (16) dan faktor beban (0.75).
-
Konstruktor dengan kapasiti awal:
LinkedHashSet<String> set2 = new LinkedHashSet<>(20);
Ini mencipta satu LinkedHashSet kosong dengan kapasiti awal 20.
-
Konstruktor dengan kumpulan lain:
ArrayList<String> list = new ArrayList<>(); list.add("Merah"); list.add("Biru"); LinkedHashSet<String> set3 = new LinkedHashSet<>(list);
Ini mencipta satu LinkedHashSet yang mengandungi semua elemen dari kumpulan yang diberikan (list dalam kasus ini).
Method Kelas
Sekarang, mari kita lihat beberapa method yang paling berguna dari LinkedHashSet. Saya akan menyajikannya dalam satu jadual untuk rujukan mudah:
Method | Keterangan |
---|---|
add(E e) | Menambahkan elemen yang dinyatakan ke set jika ia belum hadir |
remove(Object o) | Menghapus elemen yang dinyatakan dari set jika hadir |
contains(Object o) | Kembali true jika set mengandungi elemen yang dinyatakan |
size() | Kembali jumlah elemen di dalam set |
clear() | Menghapus semua elemen dari set |
isEmpty() | Kembali true jika set tidak mengandungi elemen |
Mari lihat method ini dalam aksi:
LinkedHashSet<String> warna = new LinkedHashSet<>();
// Menambahkan elemen
warna.add("Merah");
warna.add("Hijau");
warna.add("Biru");
System.out.println("Warna: " + warna); // Output: Warna: [Merah, Hijau, Biru]
// Menambahkan rakaman (tidak akan ditambahkan)
warna.add("Merah");
System.out.println("Warna setelah menambah rakaman: " + warna); // Output: Warna setelah menambah rakaman: [Merah, Hijau, Biru]
// Memeriksa jika elemen hadir
System.out.println("Mengandungi Kuning? " + warna.contains("Kuning")); // Output: Mengandungi Kuning? false
// Menghapus elemen
warna.remove("Hijau");
System.out.println("Warna setelah menghapus Hijau: " + warna); // Output: Warna setelah menghapus Hijau: [Merah, Biru]
// Mendapatkan ukuran
System.out.println("Jumlah warna: " + warna.size()); // Output: Jumlah warna: 2
// Memeriksa jika set kosong
System.out.println("Adakah set kosong? " + warna.isEmpty()); // Output: Adakah set kosong? false
// Membersihkan set
warna.clear();
System.out.println("Warna setelah membersihkan: " + warna); // Output: Warna setelah membersihkan: []
Mendapatkan Spliterator() untuk Menggunakan Entri LinkedHashSet Contoh
Sekarang, mari kita lihat fitur yang lebih maju: Spliterator. Ia seperti iterator yang super berdaya yang boleh digunakan untuk pemrosesan paralel. Jangan risau jika itu terdengar rumit – kita akan menjaga hal ini mudah!
Berikut adalah contoh cara menggunakan Spliterator dengan LinkedHashSet:
LinkedHashSet<String> buah = new LinkedHashSet<>();
buah.add("Apel");
buah.add("Pisang");
buah.add("Ceri");
buah.add("Kurma");
Spliterator<String> spliterator = buah.spliterator();
// Menggunakan Spliterator untuk mencetak elemen
spliterator.forEachRemaining(buah -> System.out.println("Buah: " + buah));
Kod ini akan menghasilkan output:
Buah: Apel
Buah: Pisang
Buah: Ceri
Buah: Kurma
Method spliterator() mengembalikan satu Spliterator, yang kita dapat gunakan untuk mengiterasi atas LinkedHashSet kita. Method forEachRemaining() menerapkan tindakan yang diberikan kepada setiap elemen. Dalam kasus ini, kita mencetak setiap buah.
Dan itu adalah! Anda baru saja belajar dasar-dasar Java's LinkedHashSet. Ingat, praktek membuat perfect, jadi jangan takut untuk bereksperimen dengan konsep ini. Cobalah untuk mencipta LinkedHashSet anda sendiri dan main-main dengan methodnya. Sebelum anda tahu, anda akan menjadi seorang master LinkedHashSet!
Happy coding, bintang Java masa depan! ?
Credits: Image by storyset