Most visited

Recently visited

Added in API level 9

NavigableSet

public interface NavigableSet
implements SortedSet<E>

java.util.NavigableSet<E>
Known Indirect Subclasses


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

Summary

Public methods

abstract E ceiling(E e)

返回此集合中大于或等于给定元素的 null元素,如果不存在此元素,则 null

abstract Iterator<E> descendingIterator()

以降序返回此集合中元素的迭代器。

abstract NavigableSet<E> descendingSet()

返回此集合中包含的元素的逆序视图。

abstract E floor(E e)

返回此集合中小于或等于给定元素的最大元素,如果不存在此元素,则 null

abstract NavigableSet<E> headSet(E toElement, boolean inclusive)

返回此集合的元素小于(或等于,如果 inclusive为true) toElement

abstract SortedSet<E> headSet(E toElement)

返回此元素严格小于 toElement的部分视图。

相当于 headSet(toElement, false)

abstract E higher(E e)

返回此集合中的最小元素严格大于给定元素,或者如果不存在这样的元素,则 null

abstract Iterator<E> iterator()

以升序返回此集合中元素的迭代器。

abstract E lower(E e)

返回该集合中最大的元素,严格小于给定的元素,如果没有这个元素, null

abstract E pollFirst()

检索并删除第一个(最低)元素,如果此集合为空,则返回 null

abstract E pollLast()

检索并移除最后一个(最高)元素,如果此集合为空,则返回 null

abstract NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)

返回此集合中元素范围从 fromElementtoElement的部分的视图。

abstract SortedSet<E> subSet(E fromElement, E toElement)

返回此集合中元素范围从 fromElement (包括 toElement )到 toElement (不包括)的部分的视图。

相当于 subSet(fromElement, true, toElement, false)

abstract SortedSet<E> tailSet(E fromElement)

返回该元素大于或等于 fromElement的部分视图。

相当于 tailSet(fromElement, true)

abstract NavigableSet<E> tailSet(E fromElement, boolean inclusive)

返回此集合中元素大于(或等于,如果 inclusive为真) fromElement

Inherited methods

From interface java.util.SortedSet
From interface java.util.Set
From interface java.util.Collection
From interface java.lang.Iterable

Public methods

ceiling

Added in API level 9
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

descendingIterator

Added in API level 9
Iterator<E> descendingIterator ()

以降序返回此集合中元素的迭代器。 相当于descendingSet().iterator()

Returns
Iterator<E> an iterator over the elements in this set, in descending order

descendingSet

Added in API level 9
NavigableSet<E> descendingSet ()

返回此集合中包含的元素的逆序视图。 降序集由该集支持,因此对集的更改反映在降序集中,反之亦然。 如果两个集合中的任何一个在迭代过程中被修改(除了通过迭代器自己的remove操作),迭代的结果是未定义的。

返回的集合的订购等同于Collections.reverseOrder (comparator()) 表达s.descendingSet().descendingSet()返回一个视图的s实质上等同于s

Returns
NavigableSet<E> a reverse order view of this set

floor

Added in API level 9
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

headSet

Added in API level 9
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

headSet

Added in API level 11
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

higher

Added in API level 9
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

Added in API level 11
Iterator<E> iterator ()

以升序返回此集合中元素的迭代器。

Returns
Iterator<E> an iterator over the elements in this set, in ascending order

lower

Added in API level 9
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

pollFirst

Added in API level 9
E pollFirst ()

检索并删除第一个(最低)元素,如果此集合为空,则返回 null

Returns
E the first element, or null if this set is empty

pollLast

Added in API level 9
E pollLast ()

检索并删除最后一个(最高)元素,如果此集合为空,则返回 null

Returns
E the last element, or null if this set is empty

subSet

Added in API level 9
NavigableSet<E> subSet (E fromElement, 
                boolean fromInclusive, 
                E toElement, 
                boolean toInclusive)

返回此集合中元素范围从fromElementtoElement的部分视图。 如果fromElementtoElement相等,则返回的集合为空,除非fromInclusivetoInclusive均为真。 返回的集合由此集合支持,因此返回集合中的更改将反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。

返回的集合将抛出 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.

subSet

Added in API level 11
SortedSet<E> subSet (E fromElement, 
                E toElement)

返回此集合的部分视图,其元素范围从fromElement (含)到toElement (独占)。 (如果fromElementtoElement相等,则返回的集合是空的。)返回集合由此集合支持,因此返回集合中的更改会反映在此集合中,反之亦然。 返回的集合支持此集合支持的所有可选集操作。

返回的集合将抛出 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

tailSet

Added in API level 11
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

tailSet

Added in API level 9
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

Hooray!