Trong hướng dẫn này, chúng ta sẽ tìm hiểu về giao diện Java NavigableSet và các phương thức của nó với sự trợ giúp của một ví dụ.
Các NavigableSet
giao diện của khuôn khổ Java Collections cung cấp các tính năng để di chuyển giữa các yếu tố quy định.
Nó được coi là một loại SortedSet.
Lớp triển khai NavigableSet
Để sử dụng các chức năng của NavigableSet
giao diện, chúng ta cần sử dụng TreeSet
lớp thực thi NavigableSet
.
Làm thế nào để sử dụng NavigableSet?
Trong Java, chúng ta phải nhập java.util.NavigableSet
gói để sử dụng NavigableSet
. Khi chúng tôi nhập gói, đây là cách chúng tôi có thể tạo các tập hợp có thể điều hướng.
// SortedSet implementation by TreeSet class NavigableSet numbers = new TreeSet();
Ở đây, chúng tôi đã tạo một tập hợp điều hướng có tên là các số của TreeSet
lớp.
Phương thức của NavigableSet
Các NavigableSet
được coi là một loại SortedSet
. Đó là vì NavigableSet
mở rộng SortedSet
giao diện.
Do đó, tất cả các phương thức SortedSet cũng có sẵn trong NavigableSet. Để tìm hiểu cách thực hiện các phương pháp này, hãy truy cập Java SortedSet.
Tuy nhiên, một số các phương pháp SortedSet
( headSet()
, tailSet()
và subSet()
) được định nghĩa khác nhau trong NavigableSet
.
Hãy xem cách các phương thức này được định nghĩa trong NavigableSet
.
headSet (phần tử, booleanValue)
Các headSet()
phương pháp trả về tất cả các yếu tố của một bộ điều hướng được trước các yếu tố quy định (được thông qua như là một cuộc tranh cãi).
Tham số booleanValue là tùy chọn. Giá trị mặc định của nó là false
.
Nếu true
được truyền dưới dạng booleanValue, phương thức trả về tất cả các phần tử trước phần tử được chỉ định bao gồm cả phần tử được chỉ định.
tailSet (phần tử, booleanValue)
Các tailSet()
phương pháp trả về tất cả các yếu tố của một bộ điều hướng sau khi các yếu tố cụ thể (được thông qua như là một cuộc tranh cãi), bao gồm các yếu tố cụ thể.
Tham số booleanValue là tùy chọn. Giá trị mặc định của nó là true
.
Nếu false
được truyền dưới dạng booleanValue, phương thức trả về tất cả các phần tử sau phần tử được chỉ định mà không bao gồm phần tử đã chỉ định.
subSet (e1, bv1, e2, bv2)
Các subSet()
phương pháp trả về tất cả các yếu tố giữa e1 và e2 bao gồm e1.
Bv1 và bv2 là các tham số tùy chọn. Giá trị mặc định của bv1 là true
và giá trị mặc định của bv2 là false
.
Nếu false
được chuyển dưới dạng bv1, phương thức trả về tất cả các phần tử giữa e1 và e2 mà không bao gồm e1
.
Nếu true
được chuyển dưới dạng bv2, phương thức trả về tất cả các phần tử giữa e1 và e2, bao gồm cả e1.
Phương pháp điều hướng
Các NavigableSet
cung cấp phương pháp khác nhau có thể được sử dụng để điều hướng qua các yếu tố của nó.
- LowerndingSet () - đảo ngược thứ tự của các phần tử trong một tập hợp
- downndingIterator () - trả về một trình lặp có thể được sử dụng để lặp qua một tập hợp theo thứ tự ngược lại
- Trần () - trả về phần tử thấp nhất trong số các phần tử lớn hơn hoặc bằng phần tử được chỉ định
- floor () - trả về phần tử lớn nhất trong số các phần tử nhỏ hơn hoặc bằng phần tử được chỉ định
- cao hơn () - trả về phần tử thấp nhất trong số các phần tử lớn hơn phần tử được chỉ định
- low () - trả về phần tử lớn nhất trong số các phần tử nhỏ hơn phần tử được chỉ định
- thăm dò ý kiến () - trả về và xóa phần tử đầu tiên khỏi tập hợp
- thăm dò ý kiến () - trả về và xóa phần tử cuối cùng khỏi tập hợp
Để tìm hiểu thêm về NavigableSet
, hãy truy cập Java NavigableSet (tài liệu Java chính thức).
Triển khai NavigableSet trong TreeSet Class
import java.util.NavigableSet; import java.util.TreeSet; class Main ( public static void main(String() args) ( // Creating NavigableSet using the TreeSet NavigableSet numbers = new TreeSet(); // Insert elements to the set numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("NavigableSet: " + numbers); // Access the first element int firstElement = numbers.first(); System.out.println("First Number: " + firstElement); // Access the last element int lastElement = numbers.last(); System.out.println("Last Element: " + lastElement); // Remove the first element int number1 = numbers.pollFirst(); System.out.println("Removed First Element: " + number1); // Remove the last element int number2 = numbers.pollLast(); System.out.println("Removed Last Element: " + number2); ) )
Đầu ra
Bộ điều hướng: (1, 2, 3) Phần tử đầu tiên: 1 Phần tử cuối cùng: 3 Phần tử đầu tiên bị loại bỏ: 1 Phần tử cuối cùng bị loại bỏ: 3
Để tìm hiểu thêm về TreeSet
, hãy truy cập Java TreeSet.
Bây giờ chúng ta đã biết về NavigableSet
giao diện, chúng ta sẽ tìm hiểu về việc triển khai nó bằng cách sử dụng TreeSet
lớp.