Apakah HashSet?
HashSet ialah jenis data terbina dalam Java, dan dalam istilah awam anda boleh menyebut "HashSet ialah koleksi elemen unik yang tidak tertib." Sila lihat contoh asas:
- Ia mencipta koleksi ( koleksi bermaksud unit tunggal objek cth: ArrayList, LinkedList, Vector dll) yang menggunakan jadual cincang untuk penyimpanan.
- Nilai pendua tidak dibenarkan dalam HashSet.
- Anda boleh memasukkan nilai "null" dalam HashSet.
- Tiada perintah sisipan dikekalkan. Jadi, jika anda ingin memasukkan item mengikut susunan, HashSet akan menjadi pilihan yang tidak baik untuk keperluan anda.
- Jika anda ingin mendapatkan/mendapatkan semula elemen dalam masa tetap (O(1)) maka HashSet ialah salah satu pendekatan terbaik yang boleh anda ambil.
Apakah kaedah HashSet.contains()?
HashSet.contains() ialah kaedah boolean untuk menyemak sama ada item hadir dalam contoh HashSet atau tidak. Ringkasnya, sama ada set itu mengandungi elemen yang dikehendaki. Java.util.HashSet menyediakan pelaksanaan yang cekap untuknya. Biar kami tunjukkan kepada anda cara anda boleh menggunakannya dengan berkesan untuk menyelesaikan pertanyaan anda.mengandungi() dengan Integer
import java.util.HashSet;
public class HashSetDemo {
public static void main(String[] args) {
// Declare your hash set
HashSet digits = new HashSet();
digits.add(0);
digits.add(1);
digits.add(2);
digits.add(3);
digits.add(4);
digits.add(5);
digits.add(null);
System.out.println("All elements in hashset:\t" + digits);
// Try adding duplicates
digits.add(5);
digits.add(2);
System.out.println("After adding duplicates: \t" + digits);
System.out.println("\n-------Using Contains Method-------");
// Check out if the following digits exist in the hashset
System.out.println("digits.contains(0) : " + digits.contains(0));
System.out.println("digits.contains(2) : " + digits.contains(2));
System.out.println("digits.contains(3) : " + digits.contains(7));
System.out.println("digits.contains(null) : " + digits.contains(null));
}
}
Pengeluaran
Semua elemen dalam set cincang: [0, null, 1, 2, 3, 4, 5] Selepas menambah pendua: [0, null, 1, 2, 3, 4, 5] -------Menggunakan Kaedah Mengandungi- ------ digits.contains(0) : true digits.contains(2) : true digits.contains(3) : false digits.contains(null) : true
mengandungi() dengan Strings
Lihat contoh lain kaedah contains() dengan Strings .
import java.util.HashSet;
public class HashSetDemo {
public static void main(String[] args) {
// Try working with another hash set of String type
HashSet rainbow = new HashSet();
// Adding elements into HashSet using add()
rainbow.add("Red");
rainbow.add("Orange");
rainbow.add("Yellow");
rainbow.add("Green");
rainbow.add("Blue");
rainbow.add("Indigo");
rainbow.add("Violet");
// Let's traverse the hashset
System.out.println("Traversing the rainbow:");
for (String i : rainbow){
System.out.println(i);
}
// Check out if rainbow contains this color or not
System.out.println("\n-------Using Contains Method-------");
System.out.println("rainbow.contains(\"Yellow\"): \t" + rainbow.contains("Yellow"));
System.out.println("rainbow.contains(\"White\"): \t" + rainbow.contains("White"));
System.out.println("rainbow.contains(\"Lavender\"): \t" + rainbow.contains("Lavender"));
System.out.println("rainbow.contains(\"Red\"): \t" + rainbow.contains("Red"));
// Remove a color from rainbow using remove()
rainbow.remove("Red");
// Now consume set contains() method again to check if it's still present
System.out.println("rainbow.contains(\"Red\"): \t" + rainbow.contains("Red"));
System.out.println("\nAfter removing Red: " + rainbow);
}
}
Pengeluaran
Melintasi pelangi: Merah Violet Kuning Biru Indigo Jingga Hijau -------Menggunakan Kaedah Mengandungi------- pelangi.mengandungi("Kuning"): pelangi sejati.mengandungi("Putih"): pelangi palsu. mengandungi("Lavender"): pelangi palsu.mengandungi("Merah"): pelangi benar.mengandungi("Merah"): palsu Selepas mengalih keluar Merah: [Violet, Kuning, Biru, Indigo, Jingga, Hijau]
Seperti yang anda boleh lihat susunan output adalah berbeza daripada susunan meletakkan elemen ke dalam Hashset.
GO TO FULL VERSION