W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
public interface NavigableSet<E>
extends SortedSet<E>
使用導(dǎo)航方法擴(kuò)展的 SortedSet,報(bào)告給定搜索目標(biāo)的最接近匹配。方法lower、floor、ceiling和higher分別返回小于、小于或等于、大于或等于和大于給定元素的元素,如果沒有這樣的元素則返回null??梢园瓷蚧蚪敌蛟L問和遍歷 NavigableSet。 descendingSet 方法返回集合的視圖,其中所有關(guān)系和方向方法的意義都被反轉(zhuǎn)了。上升的操作和視圖的性能可能比下降的快。此接口還定義了 pollFirst 和 pollLast 方法,它們返回和刪除最低和最高元素,如果存在,則返回 null。方法 subSet、headSet 和 tailSet 與類似命名的 SortedSet 方法的不同之處在于接受描述下限和上限是包含還是排除的附加參數(shù)。任何 NavigableSet 的子集都必須實(shí)現(xiàn) NavigableSet 接口。
在允許空元素的實(shí)現(xiàn)中,導(dǎo)航方法的返回值可能不明確。 然而,即使在這種情況下,結(jié)果也可以通過檢查 contains(null) 來消除歧義。 為避免此類問題,鼓勵(lì)此接口的實(shí)現(xiàn)不允許插入空元素。 (請(qǐng)注意,Comparable 元素的排序集本質(zhì)上不允許為空。)
方法 subSet(E, E)、headSet(E) 和 tailSet(E) 被指定返回 SortedSet 以允許對(duì) SortedSet 的現(xiàn)有實(shí)現(xiàn)進(jìn)行兼容改造以實(shí)現(xiàn) NavigableSet,但鼓勵(lì)此接口的擴(kuò)展和實(shí)現(xiàn)覆蓋這些方法 返回 NavigableSet。
此接口是 Java 集合框架的成員。
修飾符和類型 | 方法 | 描述 |
---|---|---|
E | ceiling(E e) | 返回此集合中大于或等于給定元素的最小元素,如果沒有這樣的元素,則返回 null。 |
IteratorE | descendingIterator() | 按降序返回此集合中元素的迭代器。 |
NavigableSetE | descendingSet() | 返回此集合中包含的元素的逆序視圖。 |
E | floor(E e) | 返回此集合中小于或等于給定元素的最大元素,如果沒有這樣的元素,則返回 null。 |
SortedSetE | headSet(E toElement) | 返回此集合中元素嚴(yán)格小于 toElement 的部分的視圖。 |
NavigableSetE | headSet(E toElement, boolean inclusive) | 返回此集合中元素小于(或等于,如果 inclusive 為true)toElement 的部分的視圖。 |
E | higher(E e) | 返回此集合中嚴(yán)格大于給定元素的最小元素,如果沒有這樣的元素,則返回 null。 |
IteratorE | iterator() | 按升序返回此集合中元素的迭代器。 |
E | lower(E e) | 返回此集合中嚴(yán)格小于給定元素的最大元素,如果沒有這樣的元素,則返回 null。 |
E | pollFirst() | 檢索并刪除第一個(gè)(最低)元素,如果此集合為空,則返回 null。 |
E | pollLast() | 檢索并刪除最后一個(gè)(最高)元素,如果此集合為空,則返回 null。 |
NavigableSetE | subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) | 返回此集合的一部分的視圖,其元素范圍從 fromElement 到 toElement。 |
SortedSetE | subSet(E fromElement, E toElement) | 返回此集合部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)。 |
SortedSetE | tailSet(E fromElement) | 返回此集合中元素大于或等于 fromElement 的部分的視圖。 |
NavigableSetE | tailSet(E fromElement, boolean inclusive) | 返回此集合中元素大于(或等于,如果 inclusive 為true)fromElement 的部分的視圖。 |
從接口 java.util.Collection 繼承的方法 |
---|
parallelStream, removeIf, stream |
從接口 java.lang.Iterable 繼承的方法 |
---|
forEach |
從接口 java.util.Set 繼承的方法 |
---|
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, remove, removeAll, retainAll, size, toArray, toArray |
從接口 java.util.SortedSet 繼承的方法 |
---|
comparator, first, last, spliterator |
E lower(E e)
返回此集合中嚴(yán)格小于給定元素的最大元素,如果沒有這樣的元素,則返回 null。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
e | 要匹配的值 |
返回:
小于 e 的最大元素,如果沒有這樣的元素,則為 null
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較 |
NullPointerException | 如果指定元素為空且此集合不允許空元素 |
E floor(E e)
返回此集合中小于或等于給定元素的最大元素,如果沒有這樣的元素,則返回 null。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
e | 要匹配的值 |
返回:
小于或等于 e 的最大元素,如果沒有這樣的元素,則返回 null
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較 |
NullPointerException | 如果指定元素為空且此集合不允許空元素 |
E ceiling(E e)
返回此集合中大于或等于給定元素的最小元素,如果沒有這樣的元素,則返回 null。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
e | 要匹配的值 |
返回:
大于或等于 e 的最小元素,如果沒有這樣的元素,則返回 null
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較 |
NullPointerException | 如果指定元素為空且此集合不允許空元素 |
E higher(E e)
返回此集合中嚴(yán)格大于給定元素的最小元素,如果沒有這樣的元素,則返回 null。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
e | 要匹配的值 |
返回:
大于 e 的最小元素,如果沒有這樣的元素,則返回 null
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較 |
NullPointerException | 如果指定元素為空且此集合不允許空元素 |
E pollFirst()
檢索并刪除第一個(gè)(最低)元素,如果此集合為空,則返回 null。
返回:
第一個(gè)元素,如果此集合為空,則返回 null
E pollLast()
檢索并刪除最后一個(gè)(最高)元素,如果此集合為空,則返回 null。
返回:
最后一個(gè)元素,如果此集合為空,則返回 null
IteratorE iterator()
按升序返回此集合中元素的迭代器。
指定者:
接口 CollectionE 中的迭代器
指定者:
接口 IterableE 中的迭代器
指定者:
接口 SetE 中的迭代器
返回:
此集合中元素的迭代器,按升序排列
NavigableSetE descendingSet()
返回此集合中包含的元素的逆序視圖。 降序集由該集支持,因此對(duì)集的更改會(huì)反映在降序集中,反之亦然。 如果在對(duì)任一集進(jìn)行迭代時(shí)修改了任一集(通過迭代器自己的刪除操作除外),則迭代的結(jié)果是未定義的。
返回的集合具有等價(jià)于 Collections#reverseOrder(Comparator)(comparator()) 的排序。 表達(dá)式 s.descendingSet().descendingSet() 返回一個(gè)與 s 基本等價(jià)的 s 視圖。
返回:
該集合的逆序視圖
IteratorE descendingIterator()
按降序返回此集合中元素的迭代器。 等效于descendingSet().iterator()。
返回:
此集合中元素的迭代器,按降序排列
NavigableSetE subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
返回此集合的一部分的視圖,其元素范圍從 fromElement 到 toElement。 如果 fromElement 和 toElement 相等,則返回的集合為空,除非 fromInclusive 和 toInclusive 都為true。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。
返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
fromElement | 返回集的低端點(diǎn) |
fromInclusive | 如果要在返回的視圖中包含低端點(diǎn),則為 true |
toElement | 返回集的高端點(diǎn) |
toInclusive | 如果要在返回的視圖中包含高端端點(diǎn),則為 true |
返回:
此集合的一部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 和 toElement 不能使用該集合的比較器相互比較(或者,如果該集合沒有比較器,則使用自然排序)。 如果 fromElement 或 toElement 無法與集合中當(dāng)前的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。 |
NullPointerException | 如果 fromElement 或 toElement 為 null 并且此集合不允許 null 元素 |
IllegalArgumentException | 如果 fromElement 大于 toElement; 或者如果此集合本身具有受限范圍,并且 fromElement 或 toElement 位于范圍的范圍之外。 |
NavigableSetE headSet(E toElement, boolean inclusive)
返回此集合中元素小于(或等于,如果 inclusive 為true)toElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。
返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
toElement | 返回集的高端點(diǎn) |
inclusive | 如果要在返回的視圖中包含高端端點(diǎn),則為 true |
返回:
此集合的一部分的視圖,其元素小于(或等于,如果 inclusive 為真)toElement
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果 toElement 與該集合的比較器不兼容(或者,如果該集合沒有比較器,如果 toElement 沒有實(shí)現(xiàn) Comparable)。 如果 toElement 無法與集合中的當(dāng)前元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。 |
NullPointerException | 如果 toElement 為 null 并且此集合不允許 null 元素 |
IllegalArgumentException | 如果這個(gè)集合本身有一個(gè)限制范圍,并且 toElement 位于范圍的范圍之外 |
NavigableSetE tailSet(E fromElement, boolean inclusive)
返回此集合中元素大于(或等于,如果 inclusive 為true)fromElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。
返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
fromElement | 返回集的低端點(diǎn) |
inclusive | 如果要在返回的視圖中包含低端點(diǎn),則為 true |
返回:
此集合中元素大于或等于 fromElement 的部分的視圖
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 與這個(gè)集合的比較器不兼容(或者,如果集合沒有比較器,如果 fromElement 沒有實(shí)現(xiàn) Comparable)。 如果無法將 fromElement 與當(dāng)前集合中的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。 |
NullPointerException | 如果 fromElement 為 null 并且此集合不允許 null 元素 |
IllegalArgumentException | 如果此集合本身具有受限范圍,并且 fromElement 位于范圍的范圍之外 |
SortedSetE subSet(E fromElement, E toElement)
返回此集合部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)。 (如果 fromElement 和 toElement 相等,則返回的集合為空。)返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。
返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。
等效于 subSet(fromElement, true, toElement, false)。
指定者:
接口 SortedSetE 中的子集
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
fromElement | 返回集的低端點(diǎn)(包括) |
toElement | 返回集的高端點(diǎn)(不包括) |
返回:
此集合的一部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 和 toElement 不能使用該集合的比較器相互比較(或者,如果該集合沒有比較器,則使用自然排序)。 如果 fromElement 或 toElement 無法與集合中當(dāng)前的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。 |
NullPointerException | 如果 fromElement 或 toElement 為 null 并且此集合不允許 null 元素 |
IllegalArgumentException | 如果 fromElement 大于 toElement; 或者如果這個(gè)集合本身有一個(gè)受限制的范圍,并且 fromElement 或 toElement 位于范圍的范圍之外 |
SortedSetE headSet(E toElement)
返回此集合中元素嚴(yán)格小于 toElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。
返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。
等效于 headSet(toElement, false)。
指定者:
接口 SortedSetE 中的 headSet
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
toElement | 返回集的高端點(diǎn)(不包括) |
返回:
此集合中元素嚴(yán)格小于 toElement 的部分的視圖
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果 toElement 與該集合的比較器不兼容(或者,如果該集合沒有比較器,如果 toElement 沒有實(shí)現(xiàn) Comparable)。 如果 toElement 無法與集合中的當(dāng)前元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。 |
NullPointerException | 如果 toElement 為 null 并且此集合不允許 null 元素 |
IllegalArgumentException | 如果這個(gè)集合本身有一個(gè)限制范圍,并且 toElement 位于范圍的范圍之外 |
SortedSetE tailSet(E fromElement)
返回此集合中元素大于或等于 fromElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。
返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。
等價(jià)于tailSet(fromElement, true)。
指定者:
接口 SortedSetE 中的 tailSet
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
fromElement | 返回集的低端點(diǎn)(包括) |
返回:
此集合中元素大于或等于 fromElement 的部分的視圖
Throws:
Throw名稱 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 與這個(gè)集合的比較器不兼容(或者,如果集合沒有比較器,如果 fromElement 沒有實(shí)現(xiàn) Comparable)。 如果無法將 fromElement 與當(dāng)前集合中的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。 |
NullPointerException | 如果 fromElement 為 null 并且此集合不允許 null 元素 |
IllegalArgumentException | 如果此集合本身具有受限范圍,并且 fromElement 位于范圍的范圍之外 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: