80. Lớp LinkedHashSet trong lập trình Java

Trong lập trình Java, LinkedHashSet là một lớp trong cấu trúc dữ liệu Set. Nó kế thừa từ lớp HashSet và triển khai giao diện Set để cung cấp một tập hợp không có các phần tử trùng lặp, nhưng bảo đảm thứ tự lưu giữ các phần tử chúng ta thêm vào.

Điểm nổi bật của LinkedHashSet so với HashSet là việc nó giữ thứ tự chèn của các phần tử. Khi duyệt qua LinkedHashSet, các phần tử sẽ được trả về theo thứ tự chúng đã được thêm vào.

Dưới đây là cách tạo và sử dụng LinkedHashSet trong Java:

  1. Khởi tạo một đối tượng LinkedHashSet trống:
java
import java.util.LinkedHashSet;

LinkedHashSet<String> linkedHashSet = new LinkedHashSet<>();
  1. Thêm phần tử vào LinkedHashSet:
java
linkedHashSet.add("apple");
linkedHashSet.add("banana");
linkedHashSet.add("orange");
  1. Duyệt qua LinkedHashSet:
java
for (String fruit : linkedHashSet) {
    System.out.println(fruit);
}

Kết quả đầu ra sẽ là:





apple
banana
orange

Chúng ta thấy rằng các phần tử được trả về theo thứ tự chúng được thêm vào.

Một số điểm cần lưu ý về LinkedHashSet:

  • Do nó bảo đảm thứ tự lưu giữ, việc duyệt và thêm phần tử vào LinkedHashSet sẽ có hiệu năng chậm hơn so với HashSet. Tuy nhiên, với số lượng phần tử nhỏ, sự khác biệt về hiệu năng không đáng kể.
  • LinkedHashSet không cho phép phần tử trùng lặp. Nếu bạn thêm một phần tử đã tồn tại trong tập hợp, nó sẽ không thay đổi tập hợp và không có thông báo lỗi.
  • LinkedHashSet không đồng bộ (non-synchronized). Nếu bạn cần sử dụng nó trong môi trường đa luồng (multi-threading), bạn nên thêm đồng bộ hóa để đảm bảo tính toàn vẹn dữ liệu.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top