Java HashSet
HashSet là một tập hợp các mục trong đó mọi mục là duy nhất và nó được tìm thấy trong java.util gói:
Thí dụ
Tạo một HashSetđối tượng 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
Các HashSetlớp học có nhiều phương pháp hữu ích. Ví dụ: để thêm các mục vào nó, hãy sử dụng add()phương pháp:
Thí 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, nó chỉ xuất hiện một lần trong tập hợp vì mọi mục trong một tập hợp phải là duy nhất.
Kiểm tra nếu một mặt hàng 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 contains()phương pháp:
Thí dụ
cars.contains("Mazda"); Xóa một mục
Để xóa một mục, hãy sử dụng remove()phương pháp:
Thí dụ
cars.remove("Volvo"); Để xóa tất cả các mục, hãy sử dụng clear()phương pháp:
Thí dụ
cars.clear(); Kích thước bộ băm
Để biết có bao nhiêu mục, hãy sử dụng sizephương pháp:
Thí dụ
cars.size(); Loop Through a HashSet
Lặp qua các mục của một HashSetvới vòng lặp cho từng :
Thí dụ
for (String i : cars) { System.out.println(i); } Các loại khác
Các mục trong HashSet thực sự 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) kiểu “Chuỗi”. Hãy nhớ rằng một chuỗi trong Java là một đối tượng (không phải là một kiểu nguyên thủy). Để sử dụng các loại khác, chẳng hạn như int, bạn phải xác định tương đương lớp wrapper : Integer. Đối với các kiểu nguyên thủy khác, hãy sử dụng: Booleancho boolean, Charactercho char, Doublecho đôi, v.v.:
Thí dụ
Sử dụng một HashSetlưu trữ Integercác đối tượng:
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."); } } } }