public interface NavigableSet
implements SortedSet<E>
java.util.NavigableSet<E> |
Known Indirect Subclasses
ConcurrentSkipListSet<E>,
TreeSet<E>
|
A SortedSet
扩展了导航方法,报告给定搜索目标的最接近的匹配项。 方法lower(E)
, floor(E)
, ceiling(E)
和higher(E)
返回元件分别大于给定的元素小于,小于或等于,大于或等于,大于,返回null
如果不存在这样的元件。
一个NavigableSet
可以按升序或降序访问和遍历。 descendingSet()
方法返回所有关系和方向方法反转的意义。 上行操作和意见的表现可能比下行表现更快。 该接口另外定义了方法pollFirst()
和pollLast()
,返回并移除最低和最高元素(如果存在),否则返回null
。 方法subSet(E, boolean, E, boolean)
, headSet(E, boolean)
和tailSet(E, boolean)
从等命名的不同SortedSet
在接受描述的下限和上限是否是包含性的抗排斥附加参数的方法。 任何NavigableSet
子集都必须实现NavigableSet
接口。
在允许null
元素的实现中,导航方法的返回值可能不明确。 但是,即使在这种情况下,也可以通过检查contains(null)
来消除结果。 为了避免这样的问题,鼓励这个接口的实现不允许插入null
元件。 (请注意,有序的Comparable
元素本质上不允许null
)
方法 subSet(E, E)
, headSet(E)
,并 tailSet(E)
被指定为返回 SortedSet
,以允许现有的实现 SortedSet
能相容地改进来实现 NavigableSet
,但鼓励扩展和该接口的实现重写这些方法返回 NavigableSet
。
Public methods |
|
---|---|
abstract E |
ceiling(E e) 返回此集合中大于或等于给定元素的 |
abstract Iterator<E> |
descendingIterator() 以降序返回此集合中元素的迭代器。 |
abstract NavigableSet<E> |
descendingSet() 返回此集合中包含的元素的逆序视图。 |
abstract E |
floor(E e) 返回此集合中小于或等于给定元素的最大元素,如果不存在此元素,则 |
abstract NavigableSet<E> |
headSet(E toElement, boolean inclusive) 返回此集合的元素小于(或等于,如果 |
abstract SortedSet<E> |
headSet(E toElement) 返回此元素严格小于 toElement的部分视图。 相当于 |
abstract E |
higher(E e) 返回此集合中的最小元素严格大于给定元素,或者如果不存在这样的元素,则 |
abstract Iterator<E> |
iterator() 以升序返回此集合中元素的迭代器。 |
abstract E |
lower(E e) 返回该集合中最大的元素,严格小于给定的元素,如果没有这个元素, |
abstract E |
pollFirst() 检索并删除第一个(最低)元素,如果此集合为空,则返回 |
abstract E |
pollLast() 检索并移除最后一个(最高)元素,如果此集合为空,则返回 |
abstract NavigableSet<E> |
subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) 返回此集合中元素范围从 |
abstract SortedSet<E> |
subSet(E fromElement, E toElement) 返回此集合中元素范围从 fromElement (包括 toElement )到 toElement (不包括)的部分的视图。 相当于 |
abstract SortedSet<E> |
tailSet(E fromElement) 返回该元素大于或等于 fromElement的部分视图。 相当于 |
abstract NavigableSet<E> |
tailSet(E fromElement, boolean inclusive) 返回此集合中元素大于(或等于,如果 |
Inherited methods |
|
---|---|
From interface java.util.SortedSet
|
|
From interface java.util.Set
|
|
From interface java.util.Collection
|
|
From interface java.lang.Iterable
|
E ceiling (E e)
返回此集合中大于或等于给定元素的 null
元素,如果不存在此元素,则 null
。
Parameters | |
---|---|
e |
E : the value to match |
Returns | |
---|---|
E |
the least element greater than or equal to e , or null if there is no such element |
Throws | |
---|---|
ClassCastException |
if the specified element cannot be compared with the elements currently in the set |
NullPointerException |
if the specified element is null and this set does not permit null elements |
Iterator<E> descendingIterator ()
以降序返回此集合中元素的迭代器。 相当于descendingSet().iterator()
。
Returns | |
---|---|
Iterator<E> |
an iterator over the elements in this set, in descending order |
NavigableSet<E> descendingSet ()
返回此集合中包含的元素的逆序视图。 降序集由该集支持,因此对集的更改反映在降序集中,反之亦然。 如果两个集合中的任何一个在迭代过程中被修改(除了通过迭代器自己的remove
操作),迭代的结果是未定义的。
返回的集合的订购等同于Collections.reverseOrder
(comparator())
。 表达s.descendingSet().descendingSet()
返回一个视图的s
实质上等同于s
。
Returns | |
---|---|
NavigableSet<E> |
a reverse order view of this set |
E floor (E e)
返回此集合中小于或等于给定元素的最大元素,如果不存在此元素,则 null
。
Parameters | |
---|---|
e |
E : the value to match |
Returns | |
---|---|
E |
the greatest element less than or equal to e , or null if there is no such element |
Throws | |
---|---|
ClassCastException |
if the specified element cannot be compared with the elements currently in the set |
NullPointerException |
if the specified element is null and this set does not permit null elements |
NavigableSet<E> headSet (E toElement, boolean inclusive)
返回此集合的元素小于(或等于,如果inclusive
为true) toElement
。 返回的集合由此集合支持,因此返回集合中的更改将反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。
返回的集合将抛出 IllegalArgumentException
尝试在其范围外插入元素。
Parameters | |
---|---|
toElement |
E : high endpoint of the returned set |
inclusive |
boolean : true if the high endpoint is to be included in the returned view |
Returns | |
---|---|
NavigableSet<E> |
a view of the portion of this set whose elements are less than (or equal to, if inclusive is true) toElement |
Throws | |
---|---|
ClassCastException |
if toElement is not compatible with this set's comparator (or, if the set has no comparator, if toElement does not implement Comparable ). Implementations may, but are not required to, throw this exception if toElement cannot be compared to elements currently in the set. |
NullPointerException |
if toElement is null and this set does not permit null elements |
IllegalArgumentException |
if this set itself has a restricted range, and toElement lies outside the bounds of the range |
SortedSet<E> headSet (E toElement)
返回此组中元素严格小于toElement的部分的视图。 返回的集合由此集合支持,因此返回集合中的更改将反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。
返回的集合将抛出一个 IllegalArgumentException尝试在其范围外插入元素。
相当于 headSet(toElement, false)
。
Parameters | |
---|---|
toElement |
E : high endpoint (exclusive) of the returned set |
Returns | |
---|---|
SortedSet<E> |
a view of the portion of this set whose elements are strictly less than toElement |
Throws | |
---|---|
ClassCastException |
|
NullPointerException |
|
IllegalArgumentException |
E higher (E e)
返回此集合中的最小元素严格大于给定元素,如果不存在此元素,则 null
。
Parameters | |
---|---|
e |
E : the value to match |
Returns | |
---|---|
E |
the least element greater than e , or null if there is no such element |
Throws | |
---|---|
ClassCastException |
if the specified element cannot be compared with the elements currently in the set |
NullPointerException |
if the specified element is null and this set does not permit null elements |
Iterator<E> iterator ()
以升序返回此集合中元素的迭代器。
Returns | |
---|---|
Iterator<E> |
an iterator over the elements in this set, in ascending order |
E lower (E e)
返回此集合中最大的元素严格小于给定的元素,或者如果不存在这样的元素,则 null
。
Parameters | |
---|---|
e |
E : the value to match |
Returns | |
---|---|
E |
the greatest element less than e , or null if there is no such element |
Throws | |
---|---|
ClassCastException |
if the specified element cannot be compared with the elements currently in the set |
NullPointerException |
if the specified element is null and this set does not permit null elements |
E pollFirst ()
检索并删除第一个(最低)元素,如果此集合为空,则返回 null
。
Returns | |
---|---|
E |
the first element, or null if this set is empty |
E pollLast ()
检索并删除最后一个(最高)元素,如果此集合为空,则返回 null
。
Returns | |
---|---|
E |
the last element, or null if this set is empty |
NavigableSet<E> subSet (E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
返回此集合中元素范围从fromElement
到toElement
的部分视图。 如果fromElement
和toElement
相等,则返回的集合为空,除非fromInclusive
和toInclusive
均为真。 返回的集合由此集合支持,因此返回集合中的更改将反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。
返回的集合将抛出 IllegalArgumentException
尝试在其范围外插入元素。
Parameters | |
---|---|
fromElement |
E : low endpoint of the returned set |
fromInclusive |
boolean : true if the low endpoint is to be included in the returned view |
toElement |
E : high endpoint of the returned set |
toInclusive |
boolean : true if the high endpoint is to be included in the returned view |
Returns | |
---|---|
NavigableSet<E> |
a view of the portion of this set whose elements range from fromElement , inclusive, to toElement , exclusive |
Throws | |
---|---|
ClassCastException |
if fromElement and toElement cannot be compared to one another using this set's comparator (or, if the set has no comparator, using natural ordering). Implementations may, but are not required to, throw this exception if fromElement or toElement cannot be compared to elements currently in the set. |
NullPointerException |
if fromElement or toElement is null and this set does not permit null elements |
IllegalArgumentException |
if fromElement is greater than toElement ; or if this set itself has a restricted range, and fromElement or toElement lies outside the bounds of the range. |
SortedSet<E> subSet (E fromElement, E toElement)
返回此集合的部分视图,其元素范围从fromElement (含)到toElement (独占)。 (如果fromElement和toElement相等,则返回的集合是空的。)返回集合由此集合支持,因此返回集合中的更改会反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。
返回的集合将抛出 IllegalArgumentException ,试图在其范围外插入元素。
相当于 subSet(fromElement, true, toElement, false)
。
Parameters | |
---|---|
fromElement |
E : low endpoint (inclusive) of the returned set |
toElement |
E : high endpoint (exclusive) of the returned set |
Returns | |
---|---|
SortedSet<E> |
a view of the portion of this set whose elements range from fromElement, inclusive, to toElement, exclusive |
Throws | |
---|---|
ClassCastException |
|
NullPointerException |
|
IllegalArgumentException |
SortedSet<E> tailSet (E fromElement)
返回该元素大于或等于fromElement的部分视图。 返回的集合由此集合支持,因此返回集合中的更改将反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。
返回的集合将抛出 IllegalArgumentException试图在其范围外插入元素。
相当于 tailSet(fromElement, true)
。
Parameters | |
---|---|
fromElement |
E : low endpoint (inclusive) of the returned set |
Returns | |
---|---|
SortedSet<E> |
a view of the portion of this set whose elements are greater than or equal to fromElement |
Throws | |
---|---|
ClassCastException |
|
NullPointerException |
|
IllegalArgumentException |
NavigableSet<E> tailSet (E fromElement, boolean inclusive)
返回此集合的元素大于(或等于,如果inclusive
为true)的部分的fromElement
。 返回的集合由此集合支持,因此返回集合中的更改将反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。
返回的集合将抛出 IllegalArgumentException
尝试在其范围外插入元素。
Parameters | |
---|---|
fromElement |
E : low endpoint of the returned set |
inclusive |
boolean : true if the low endpoint is to be included in the returned view |
Returns | |
---|---|
NavigableSet<E> |
a view of the portion of this set whose elements are greater than or equal to fromElement |
Throws | |
---|---|
ClassCastException |
if fromElement is not compatible with this set's comparator (or, if the set has no comparator, if fromElement does not implement Comparable ). Implementations may, but are not required to, throw this exception if fromElement cannot be compared to elements currently in the set. |
NullPointerException |
if fromElement is null and this set does not permit null elements |
IllegalArgumentException |
if this set itself has a restricted range, and fromElement lies outside the bounds of the range |