重要接口—NavigableSet接口
原文作者:Programiz
原文地址:Java?NavigableSet接口
目錄
用于導航的方法
在本教程中,我們將通過一個示例來學習 Java?NavigableSet接口及其方法。Java 集合框架的NavigableSet接口提供了在設置的元素之間導航的功能。它被視為?SortedSet?的類型。為了使用NavigableSet接口的功能,我們需要使用實現NavigableSet的TreeSet類。
?
如何使用NavigableSet?
在 Java 中,我們必須導入java.util.NavigableSet包才能使用NavigableSet。 導入包后,將按照以下方法創建可導航集。
// SortedSet implementation by TreeSet class NavigableSet<String> numbers = new TreeSet<>();在這里,我們創建了一個名為TreeSet類的number的可導航集合。
NavigableSet的方法
NavigableSet被認為是SortedSet的一種。 這是因為NavigableSet擴展了SortedSet接口。因此,所有SortedSet方法在NavigableSet中也可用。 要了解這些方法的方式,請訪問?Java SortedSet?。但是,SortedSet中的某些方法(headSet(),tailSet()和subSet())在NavigableSet中定義不同。讓我們看看如何在NavigableSet中定義這些方法。
| headSet(element, booleanValue) | 返回指定element(作為參數傳遞)之前的可導航集合的所有元素。booleanValue參數是可選的。 其默認值為false。如果true作為booleanValue傳遞,則該方法返回指定元素之前的所有元素,包括指定元素。 |
| tailSet(element, booleanValue) | 返回包含指定元素的指定element(作為參數傳遞)之后的可導航集合的所有元素。booleanValue參數是可選的。 其默認值為true。如果將false作為booleanValue傳遞,則該方法返回指定元素之后的所有元素,但不包括指定元素。 |
| subSet(e1, bv1, e2, bv2) | 返回e1和e2之間的所有元素,包括e1。bv1和bv2是可選參數。bv1的默認值為true,bv2的默認值為false。如果false作為bv1傳遞,則該方法返回e1和e2之間的所有元素,但不包括e1。如果true作為bv2傳遞,則該方法返回e1和e2之間的所有元素,包括e1。 |
用于導航的方法
NavigableSet提供了可用于導航其元素的各種方法。要了解有關NavigableSet的更多信息,請訪問?Java?NavigableSet(Java 官方文檔)。
| endingSet() | 反轉集合中元素的順序 |
| DescendingIterator() | 返回可用于以相反順序迭代集合的迭代器 |
| ceiling()? | 返回大于或等于指定元素的那些元素中的最小元素 |
| floor()? | 返回小于或等于指定元素的那些元素中最大的元素 |
| upper() | 返回大于指定元素的那些元素中的最低元素 |
| lower() | 返回小于指定元素的那些元素中最大的元素 |
| pollFirst() | 返回并從集合中刪除第一個元素 |
| pollLast() | 返回并從集合中刪除最后一個元素 |
?
TreeSet類中NavigableSet的實現
import java.util.NavigableSet; import java.util.TreeSet;class Main {public static void main(String[] args) {// Creating NavigableSet using the TreeSetNavigableSet<Integer> numbers = new TreeSet<>();// Insert elements to the setnumbers.add(1);numbers.add(2);numbers.add(3);System.out.println("NavigableSet: " + numbers);// Access the first elementint firstElement = numbers.first();System.out.println("First Number: " + firstElement);// Access the last elementint lastElement = numbers.last();System.out.println("Last Element: " + lastElement);// Remove the first elementint number1 = numbers.pollFirst();System.out.println("Removed First Element: " + number1);// Remove the last elementint number2 = numbers.pollLast();System.out.println("Removed Last Element: " + number2);} }輸出:
NavigableSet: [1, 2, 3] First Element: 1 Last Element: 3 Removed First Element: 1 Removed Last Element: 3要了解有關TreeSet的更多信息,請訪問?Java TreeSet?。
總結
以上是生活随笔為你收集整理的重要接口—NavigableSet接口的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 重要接口—Cloneable接口
- 下一篇: Java集合—ArrayList底层原理