E
-元素这一套保持型
public interface NavigableSet<E> extends SortedSet<E>
SortedSet
。方法
lower
,
floor
,
ceiling
,和
higher
返回元素分别小于、小于或等于、大于或等于、大于一个给定的元素,返回
null
如果没有这样的元素。一个
NavigableSet
可以访问和遍历升序或降序排列。的
descendingSet
方法返回一个视图的所有关联方法倒和定向感官集。提升操作和视图的性能可能会比下降的速度更快。这个接口定义的方法,另外
pollFirst
pollLast
返回去掉最高和最低的元素,如果存在,否则返回
null
。方法
subSet
,
headSet
,和
tailSet
不同于像在接受额外的参数描述是否上下界的包容性与排他性的命名
SortedSet
方法。任何
NavigableSet
子集必须实现
NavigableSet
接口。
导航方法的返回值可以实现,允许null
元素是模糊的。然而,即使在这种情况下,可以通过检查的结果来contains(null)
。为了避免这样的问题,实现该接口被鼓励不允许插入null
元素。(注意:排序集Comparable
元素本质上不允许null
。)
方法subSet(E, E)
,headSet(E)
,和tailSet(E)
指定返回SortedSet
允许SortedSet
现有实现是兼容改造的实施NavigableSet
,但扩展和实现该接口被鼓励重写这些方法返回NavigableSet
。
该接口的 Java Collections Framework成员。
Modifier and Type | Method and Description |
---|---|
E |
ceiling(E e)
返回最小的元素在这组大于或等于给定的元素,或
null 如果没有这样的元素。
|
Iterator<E> |
descendingIterator()
在这个集合中的元素上返回一个迭代器,以递减的顺序。
|
NavigableSet<E> |
descendingSet()
返回此集合中包含的元素的反向顺序视图。
|
E |
floor(E e)
返回最大的元素在这组小于或等于给定的元素,或
null 如果没有这样的元素。
|
SortedSet<E> |
headSet(E toElement)
返回从这个集合的元素是严格小于
toElement部分。
|
NavigableSet<E> |
headSet(E toElement, boolean inclusive)
返回从这个集合的元素都小于(或等于部分,如果
inclusive 是真的)
toElement 。
|
E |
higher(E e)
返回最小的元素在这套严格大于给定的元素,或
null 如果没有这样的元素。
|
Iterator<E> |
iterator()
在这个集合中的元素上返回一个迭代器,以递增的顺序。
|
E |
lower(E e)
返回最大的元素在这套严格小于给定的元素,或
null 如果没有这样的元素。
|
E |
pollFirst()
检索并移除第一(最低)的元素,或返回
null 如果这集是空的。
|
E |
pollLast()
检索和删除最后(最高)的元素,或返回
null 如果这集是空的。
|
NavigableSet<E> |
subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
返回从这个集合的元素范围从
fromElement 到
toElement 部分。
|
SortedSet<E> |
subSet(E fromElement, E toElement)
返回从这个集合的元素范围从
fromElement,包容的部分
toElement,独家。
|
SortedSet<E> |
tailSet(E fromElement)
返回从这个集合的元素都大于或等于
fromElement部分。
|
NavigableSet<E> |
tailSet(E fromElement, boolean inclusive)
返回从这个集合的元素大于部分(或相等,如果
inclusive 是真的)
fromElement 。
|
comparator, first, last, spliterator
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, remove, removeAll, retainAll, size, toArray, toArray
parallelStream, removeIf, stream
E lower(E e)
null
如果没有这样的元素。
e
的价值相匹配
e
,或
null
如果没有这样的元素
ClassCastException
如果不能指定元素与当前集合中的元素相比
NullPointerException
-如果指定元素为null,这套不允许null元素
E floor(E e)
null
如果没有这样的元素。
e
的价值相匹配
e
,或
null
如果没有这样的元素
ClassCastException
如果不能指定元素与当前集合中的元素相比
NullPointerException
-如果指定元素为null,这套不允许null元素
E ceiling(E e)
null
如果没有这样的元素。
e
的价值相匹配
e
最小元素,或
null
如果没有这样的元素
ClassCastException
如果不能指定元素与当前集合中的元素相比
NullPointerException
-如果指定元素为null,这套不允许null元素
E higher(E e)
null
如果没有这样的元素。
e
的价值相匹配
e
最小元素,或
null
如果没有这样的元素
ClassCastException
如果不能指定元素与当前集合中的元素相比
NullPointerException
-如果指定元素为null,这套不允许null元素
E pollFirst()
null
如果这集是空的。
null
如果这集是空的
E pollLast()
null
如果这集是空的。
null
如果这集是空的
NavigableSet<E> descendingSet()
remove
操作),迭代的结果是不确定的。
返回的集合具有订购相当于Collections.reverseOrder
(comparator())。表达s.descendingSet().descendingSet()
返回从s
本质上相当于s
。
Iterator<E> descendingIterator()
descendingSet().iterator()
。
NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
fromElement
到
toElement
部分。如果
fromElement
和
toElement
相等,返回的集合是空的,除非
fromInclusive
toInclusive
都是真实的。返回的集合是由这组支持的,所以返回的集合的变化反映在这个集合中,反之亦然。返回的集合支持此设置支持的所有可选集操作。
返回的集合将扔在试图插入一个元素在其范围内的IllegalArgumentException
。
fromElement
-返回设置低端点
fromInclusive
-
true
如果低的终点是被包含在返回的视图
toElement
-返回集合点
toInclusive
-
true
如果高终点是被包含在返回的视图
fromElement
,包容的部分
toElement
,独家
ClassCastException
-如果
fromElement
和
toElement
无法相比的另一个使用这个设置的比较器(或者,如果无比较器,采用自然排序)。实现可能,但不是必需的,如果
fromElement
或
toElement
不能相比,目前在集合元素抛出该异常。
NullPointerException
-如果
fromElement
或
toElement
是无效的,这套不允许null元素
IllegalArgumentException
-如果
fromElement
大于
toElement
;或者如果这集本身有一个限制的范围内,和
fromElement
或
toElement
超出范围的界限。
NavigableSet<E> headSet(E toElement, boolean inclusive)
inclusive
是真的)
toElement
。返回的集合是由这组支持的,所以返回的集合的变化反映在这个集合中,反之亦然。返回的集合支持此设置支持的所有可选集操作。
返回的集合将扔在试图插入一个元素在其范围内的IllegalArgumentException
。
toElement
-返回集合点
inclusive
-
true
如果高终点是被包含在返回的视图
inclusive
是真的)
toElement
ClassCastException
-如果
toElement
不是这集的比较器(或兼容,如果设置没有比较,如果
toElement
不实现
Comparable
)。实现可能,但不是必需的,如果
toElement
不能相比,目前在集合元素抛出该异常。
toElement
NullPointerException
是无效的,这套不允许null元素
IllegalArgumentException
-如果这套本身有一个限制的范围内,和
toElement
超出范围的界限
NavigableSet<E> tailSet(E fromElement, boolean inclusive)
inclusive
是真的)
fromElement
。返回的集合是由这组的支持,所以在返回的集合的变化反映在这集,反之亦然。返回的集合支持此设置支持的所有可选集操作。
返回的集合将扔在试图插入一个元素在其范围内的IllegalArgumentException
。
fromElement
-返回设置低端点
inclusive
-
true
如果低的终点是被包含在返回的视图
fromElement
部分
ClassCastException
-如果
fromElement
不是这集的比较器(或兼容,如果设置没有比较,如果
fromElement
不实现
Comparable
)。实现可能,但不是必需的,如果
fromElement
不能相比,目前在集合元素抛出该异常。
fromElement
NullPointerException
是无效的,这套不允许null元素
IllegalArgumentException
-如果这套本身有一个限制的范围内,和
fromElement
超出范围的界限
SortedSet<E> subSet(E fromElement, E toElement)
返回的集合将扔在试图插入一个元素在其范围内的IllegalArgumentException。
相当于subSet(fromElement, true, toElement, false)
。
subSet
接口
SortedSet<E>
fromElement
低端点(含)返回的集合的
toElement
高端点(独家)返回的集合的
ClassCastException
-如果
fromElement和
toElement无法相比的另一个使用这个设置的比较器(或者,如果无比较器,采用自然排序)。实现可能,但不是必需的,如果
fromElement或
toElement不能相比,目前在集合元素抛出该异常。
NullPointerException
-如果
fromElement或
toElement是无效的,这套不允许null元素
IllegalArgumentException
-如果
fromElement大于
toElement;或者如果这集本身有一个限制的范围内,和
fromElement或
toElement超出范围的界限
SortedSet<E> headSet(E toElement)
返回的集合将扔在试图插入一个元素在其范围内的IllegalArgumentException。
相当于headSet(toElement, false)
。
headSet
接口
SortedSet<E>
toElement
高端点(独家)返回的集合的
ClassCastException
-如果
toElement不是这集的比较器(或兼容,如果设置没有比较,如果
toElement不实现
Comparable
)。实现可能,但不是必需的,如果
toElement不能相比,目前在集合元素抛出该异常。
NullPointerException
是无效的,这套不允许null元素
IllegalArgumentException
-如果这套本身有一个限制的范围内,和
toElement超出范围的界限
SortedSet<E> tailSet(E fromElement)
返回的集合将扔在试图插入一个元素在其范围内的IllegalArgumentException。
相当于tailSet(fromElement, true)
。
tailSet
接口
SortedSet<E>
fromElement
低端点(含)返回的集合的
ClassCastException
-如果
fromElement不是这集的比较器(或兼容,如果设置没有比较,如果
fromElement不实现
Comparable
)。实现可能,但不是必需的,如果
fromElement不能相比,目前在集合元素抛出该异常。
NullPointerException
是无效的,这套不允许null元素
IllegalArgumentException
-如果这套本身有一个限制的范围内,和
fromElement超出范围的界限
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.