Bộ băm Java
Bộ băm Java
HashSet là một tập hợp các mục trong đó mỗi mục là duy nhất và được tìm thấy trong gói java.util
:
Ví dụ
Tạo một đối tượng HashSet
có tên là ô tô sẽ lưu trữ các chuỗi:
import java.util.HashSet; // Import the HashSet class HashSet<String> cars = new HashSet<String>();
Thêm các mục
Lớp HashSet
có nhiều phương thức hữu ích. Ví dụ: để thêm các mục vào nó, hãy sử dụng phương thức add()
:
Ví dụ
// Import the HashSet class import java.util.HashSet; public class Main { public static void main(String[] args) { HashSet<String> cars = new HashSet<String>(); cars.add("Volvo"); cars.add("BMW"); cars.add("Ford"); cars.add("BMW"); cars.add("Mazda"); System.out.println(cars); } }
Lưu ý: Trong ví dụ trên, mặc dù BMW được thêm hai lần nhưng nó chỉ xuất hiện một lần trong bộ vì mỗi vật phẩm trong bộ phải là duy nhất.
Kiểm tra nếu một mục tồn tại
Để kiểm tra xem một mục có tồn tại trong HashSet hay không, hãy sử dụng phương thức contains()
:
Xóa một mục
Để xóa một mục, hãy sử dụng phương thức remove()
:
Để xóa tất cả các mục, hãy sử dụng phương thức clear()
:
Kích thước bộ băm
Để biết có bao nhiêu mục, hãy sử dụng phương thức size
:
Lặp qua HashSet
Lặp lại các mục của HashSet
bằng vòng lặp for-each :
Các loại khác
Các mục trong HashSet thực chất là các đối tượng. Trong các ví dụ trên, chúng tôi đã tạo các mục (đối tượng) thuộc loại "Chuỗi". Hãy nhớ rằng Chuỗi trong Java là một đối tượng (không phải kiểu nguyên thủy). Để sử dụng các kiểu khác, chẳng hạn như int, bạn phải chỉ định một lớp bao bọc tương đương: Integer
. Đối với các kiểu nguyên thủy khác, hãy sử dụng: Boolean
cho boolean, Character
cho char, Double
cho double, v.v:
Ví dụ
Sử dụng HashSet
lưu trữ các đối tượng Integer
:
import java.util.HashSet; public class Main { public static void main(String[] args) { // Create a HashSet object called numbers HashSet<Integer> numbers = new HashSet<Integer>(); // Add values to the set numbers.add(4); numbers.add(7); numbers.add(8); // Show which numbers between 1 and 10 are in the set for(int i = 1; i <= 10; i++) { if(numbers.contains(i)) { System.out.println(i + " was found in the set."); } else { System.out.println(i + " was not found in the set."); } } } }