Giao diện bộ Java

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về giao diện Set trong Java và các phương thức của nó.

Các Setgiao diện của Java Collectionsframework cung cấp các tính năng của bộ toán học trong Java. Nó mở rộng Collectiongiao diện.

Không giống như Listgiao diện, các tập hợp không thể chứa các phần tử trùng lặp.

Các lớp triển khai Set

Setlà một giao diện nên chúng ta không thể tạo các đối tượng từ nó.

Để sử dụng các chức năng của Setgiao diện, chúng ta có thể sử dụng các lớp sau:

  • HashSet
  • LinkedHashSet
  • EnumSet
  • TreeSet

Các lớp này được định nghĩa trong Collectionskhuôn khổ và triển khai Setgiao diện.

Các giao diện mở rộng Bộ

Các Setgiao diện cũng được mở rộng bởi những subinterface:

  • SortedSet
  • NavigableSet

Làm thế nào để sử dụng Set?

Trong Java, chúng ta phải nhập java.util.Setgói để sử dụng Set.

 // Set implementation using HashSet Set animals = new HashSet(); 

Ở đây, chúng tôi đã tạo ra một Setcon vật được gọi là. Chúng tôi đã sử dụng HashSetlớp để triển khai Setgiao diện.

Phương pháp đặt

Các Setgiao diện bao gồm tất cả các phương pháp của Collectiongiao diện. Đó là vì Collectionlà một giao diện siêu của Set.

Một số phương pháp thường được sử dụng của Collectiongiao diện cũng có sẵn trong Setgiao diện là:

  • add () - thêm phần tử được chỉ định vào tập hợp
  • addAll () - thêm tất cả các phần tử của tập hợp được chỉ định vào tập hợp
  • iterator () - trả về một trình lặp có thể được sử dụng để truy cập tuần tự các phần tử của tập hợp
  • remove () - xóa phần tử được chỉ định khỏi tập hợp
  • removeAll () - xóa tất cả các phần tử khỏi tập hợp có trong một tập hợp được chỉ định khác
  • KeepAll () - giữ lại tất cả các phần tử trong tập hợp cũng có mặt trong một tập hợp được chỉ định khác
  • clear () - xóa tất cả các phần tử khỏi tập hợp
  • size () - trả về độ dài (số phần tử) của tập hợp
  • toArray () - trả về một mảng chứa tất cả các phần tử của tập hợp
  • chứa () - trả về truenếu tập hợp chứa phần tử được chỉ định
  • containsAll () - trả về truenếu tập hợp chứa tất cả các phần tử của tập hợp được chỉ định
  • hashCode () - trả về giá trị mã băm (địa chỉ của phần tử trong tập hợp)

Để tìm hiểu thêm về các phương pháp của Setgiao diện, hãy truy cập Bộ Java (tài liệu Java chính thức).

Đặt hoạt động

SetGiao diện Java cho phép chúng ta thực hiện các thao tác tập hợp toán học cơ bản như liên hợp, giao điểm và tập hợp con.

  • Union - để có được sự kết hợp của hai tập hợp x và y, chúng ta có thể sử dụngx.addAll(y)
  • Giao điểm - để nhận giao của hai tập hợp x và y, chúng ta có thể sử dụngx.retainAll(y)
  • Tập con - để kiểm tra xem x có phải là tập con của y hay không, chúng ta có thể sử dụngy.containsAll(x)

Triển khai Giao diện Đặt

1. Triển khai lớp HashSet

 import java.util.Set; import java.util.HashSet; class Main ( public static void main(String() args) ( // Creating a set using the HashSet class Set set1 = new HashSet(); // Add elements to the set1 set1.add(2); set1.add(3); System.out.println("Set1: " + set1); // Creating another set using the HashSet class Set set2 = new HashSet(); // Add elements set2.add(1); set2.add(2); System.out.println("Set2: " + set2); // Union of two sets set2.addAll(set1); System.out.println("Union is: " + set2); ) ) 

Đầu ra

 Bộ1: (2, 3) Bộ2: (1, 2) Liên hiệp là: (1, 2, 3) 

Để tìm hiểu thêm về HashSet, hãy truy cập Java HashSet.

2. Triển khai lớp TreeSet

 import java.util.Set; import java.util.TreeSet; import java.util.Iterator; class Main ( public static void main(String() args) ( // Creating a set using the TreeSet class Set numbers = new TreeSet(); // Add elements to the set numbers.add(2); numbers.add(3); numbers.add(1); System.out.println("Set using TreeSet: " + numbers); // Access Elements using iterator() System.out.print("Accessing elements using iterator(): "); Iterator iterate = numbers.iterator(); while(iterate.hasNext()) ( System.out.print(iterate.next()); System.out.print(", "); ) ) ) 

Đầu ra

 Đặt bằng TreeSet: (1, 2, 3) Truy cập các phần tử bằng biến lặp (): 1, 2, 3, 

Để tìm hiểu thêm về TreeSet, hãy truy cập Java TreeSet.

Bây giờ chúng ta biết những gì Setlà, chúng ta sẽ thấy hiện thực của nó trong các lớp học như EnumSet, HashSet, LinkedHashSetTreeSettrong các hướng dẫn tiếp theo.

thú vị bài viết...