TreeSet
java.lang.Object
|—java.util.AbstractCollection<E&
|—|—java.util.AbstractSet<E&
|—|—|—java.util.TreeSet<E&
public class TreeSet<E>
extends AbstractSet<E>
implements NavigableSet<E>, Cloneable, Serializable
基于 TreeMap 的 NavigableSet 实现。 元素使用它们的 Comparable 排序,或者由在集合创建时提供的 Comparator 排序,具体取决于使用的构造函数。
此实现为基本操作(添加、删除和包含)提供有保证的 log(n) 时间成本。
请注意,如果要正确实现 Set 接口,集合维护的顺序(无论是否提供显式比较器)必须与 equals 一致。 (参见 Comparable 或 Comparator 以获得与 equals 一致的精确定义。)这是因为 Set 接口是根据 equals 操作定义的,但 TreeSet 实例使用其 compareTo(或 compare)方法执行所有元素比较,所以两个 从集合的角度来看,这种方法认为相等的元素是相等的。 一个集合的行为是明确定义的,即使它的顺序与equals不一致; 它只是不遵守 Set 接口的一般约定。
请注意,此实现不同步。 如果多个线程同时访问一个树集,并且至少有一个线程修改了该树集,则它必须在外部同步。 这通常是通过在一些自然封装集合的对象上同步来完成的。 如果不存在这样的对象,则应使用 Collections#synchronizedSortedSet 方法“包装”该集合。 这最好在创建时完成,以防止对集合的意外不同步访问:
SortedSet s = Collections.synchronizedSortedSet(new TreeSet(...));
此类的迭代器方法返回的迭代器是快速失败的:如果在创建迭代器后的任何时间修改集合,除了通过迭代器自己的 remove 方法之外的任何方式,迭代器将抛出 ConcurrentModificationException。 因此,面对并发修改,迭代器快速而干净地失败,而不是在未来不确定的时间冒任意的、非确定性的行为。
请注意,不能保证迭代器的快速失败行为,因为一般来说,在存在不同步的并发修改的情况下,不可能做出任何硬保证。 快速失败的迭代器会尽最大努力抛出 ConcurrentModificationException。 因此,编写一个依赖于这个异常的正确性的程序是错误的:迭代器的快速失败行为应该只用于检测错误。
此类是 Java 集合框架的成员。
构造函数摘要
构造函数 | 描述 |
---|---|
TreeSet() | 构造一个新的空树集,根据其元素的自然顺序排序。 |
TreeSet(Collection<? extends E> c) | 构造一个包含指定集合中元素的新树集,根据其元素的自然顺序排序。 |
TreeSet(Comparator<? super E> comparator) | 构造一个新的空树集,根据指定的比较器排序。 |
TreeSet(SortedSetE s) | 构造一个包含相同元素并使用与指定排序集相同的顺序的新树集。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
boolean | add(E e) | 如果指定的元素尚不存在,则将其添加到此集合中。 |
boolean | addAll(Collection<? extends E> c) | 将指定集合中的所有元素添加到此集合中。 |
E | ceiling(E e) | 返回此集合中大于或等于给定元素的最小元素,如果没有这样的元素,则返回 null。 |
void | clear() | 从此集合中移除所有元素。 |
Object | clone() | 返回此 TreeSet 实例的浅表副本。 |
Comparator<? super E> | comparator() | 返回用于对该 set 中的元素进行排序的比较器,如果此 set 使用其元素的 Comparable,则返回 null。 |
boolean | contains(Object o) | 如果此集合包含指定的元素,则返回 true。 |
IteratorE | descendingIterator() | 按降序返回此 set 中元素的迭代器。 |
NavigableSetE | descendingSet() | 返回此集合中包含的元素的逆序视图。 |
E | first() | 返回此集合中当前的第一个(最低)元素。 |
E | floor(E e) | 返回此集合中小于或等于给定元素的最大元素,如果没有这样的元素,则返回 null。 |
SortedSetE | headSet(E toElement) | 返回此集合中元素严格小于 toElement 的部分的视图。 |
NavigableSetE | headSet(E toElement, boolean inclusive) | 返回此集合中元素小于(或等于,如果 inclusive 为真)toElement 的部分的视图。 |
E | higher(E e) | 返回此集合中严格大于给定元素的最小元素,如果没有这样的元素,则返回 null。 |
boolean | isEmpty() | 如果此集合不包含任何元素,则返回 true。 |
IteratorE | iterator() | 按升序返回此 set 中元素的迭代器。 |
E | last() | 返回此集合中当前的最后一个(最高)元素。 |
E | lower(E e) | 返回此集合中严格小于给定元素的最大元素,如果没有这样的元素,则返回 null。 |
E | pollFirst() | 检索并删除第一个(最低)元素,如果此集合为空,则返回 null。 |
E | pollLast() | 检索并删除最后一个(最高)元素,如果此集合为空,则返回 null。 |
boolean | remove(Object o) | 如果存在,则从此集合中删除指定的元素。 |
int | size() | 返回此集合中的元素数(其基数)。 |
SpliteratorE | spliterator() | 在此集合中的元素上创建一个后期绑定和快速失败的拆分器。 |
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.AbstractCollection 继承的方法 |
---|
containsAll, retainAll, toArray, toArray, toString |
从类 java.util.AbstractSet 继承的方法 |
---|
equals, hashCode, removeAll |
从接口 java.util.Collection 继承的方法 |
---|
parallelStream, removeIf, stream |
从接口 java.lang.Iterable 继承的方法 |
---|
forEach |
从类 java.lang.Object 继承的方法 |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
从接口 java.util.Set 继承的方法 |
---|
containsAll, equals, hashCode, removeAll, retainAll, toArray, toArray |
构造函数详细信息
TreeSet
public TreeSet()
构造一个新的空树集,根据其元素的自然顺序排序。 插入集合中的所有元素都必须实现 Comparable 接口。 此外,所有此类元素必须相互比较:e1.compareTo(e2) 不得为集合中的任何元素 e1 和 e2 抛出 ClassCastException。 如果用户尝试将元素添加到违反此约束的集合中(例如,用户尝试将字符串元素添加到元素为整数的集合中),则 add 调用将抛出 ClassCastException。
TreeSet
public TreeSet(Comparator<? super E> comparator)
构造一个新的空树集,根据指定的比较器排序。 插入集合中的所有元素必须通过指定的比较器相互比较:comparator.compare(e1, e2) 不得为集合中的任何元素 e1 和 e2 抛出 ClassCastException。 如果用户尝试向集合中添加违反此约束的元素,则 add 调用将抛出 ClassCastException。
参数:
参数名称 | 参数描述 |
---|---|
comparator | 将用于订购此集合的比较器。 如果为 null,则将使用元素的 Comparable。 |
TreeSet
public TreeSet(Collection<? extends E> c)
构造一个包含指定集合中元素的新树集,根据其元素的自然顺序排序。 插入集合中的所有元素都必须实现 Comparable 接口。 此外,所有此类元素必须相互比较:e1.compareTo(e2) 不得为集合中的任何元素 e1 和 e2 抛出 ClassCastException。
参数:
参数名称 | 参数描述 |
---|---|
c | 其元素将构成新集合的集合 |
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 c 中的元素不可比较,或不可相互比较 |
NullPointerException | 如果指定的集合为空 |
TreeSet
public TreeSet(SortedSetE s)
构造一个包含相同元素并使用与指定排序集相同的顺序的新树集。
参数:
参数名称 | 参数描述 |
---|---|
s | 其元素将组成新集合的有序集合 |
Throws:
Throw名称 | Throw描述 |
---|---|
NullPointerException | 如果指定的排序集为空 |
方法详情
iterator
public IteratorE iterator()
按升序返回此 set 中元素的迭代器。
指定者:
接口 CollectionE 中的迭代器
指定者:
接口 IterableE 中的迭代器
指定者:
接口 NavigableSetE 中的迭代器
指定者:
接口 SetE 中的迭代器
指定者:
AbstractCollectionE 类中的迭代器
返回:
此集合中元素的迭代器以升序排列
descendingIterator
public IteratorE descendingIterator()
按降序返回此 set 中元素的迭代器。
指定者:
接口 NavigableSetE 中的 descendingIterator
返回:
此集合中元素的迭代器以降序排列
descendingSet
public NavigableSetE descendingSet()
从接口复制的描述:NavigableSet
返回此集合中包含的元素的逆序视图。 降序集由该集支持,因此对集的更改会反映在降序集中,反之亦然。 如果在对任一集进行迭代时修改了任一集(通过迭代器自己的删除操作除外),则迭代的结果是未定义的。
返回的集合具有等价于 Collections#reverseOrder(Comparator)(comparator()) 的排序。 表达式 s.descendingSet().descendingSet() 返回一个与 s 基本等价的 s 视图。
指定者:
接口 NavigableSetE 中的 descendingSet
返回:
该集合的逆序视图
size
public int size()
返回此集合中的元素数(其基数)。
指定者:
接口 CollectionE 中的大小
指定者:
接口 SetE 中的大小
指定者:
AbstractCollectionE 类中的大小
返回:
该集合中的元素数量(其基数)
isEmpty
public boolean isEmpty()
如果此集合不包含任何元素,则返回 true。
指定者:
接口 CollectionE 中的 isEmpty
指定者:
接口 SetE 中的 isEmpty
覆盖:
类 AbstractCollectionE 中的 isEmpty
返回:
如果此集合不包含任何元素,则为 true
contains
public boolean contains(Object o)
如果此集合包含指定的元素,则返回 true。 更正式地说,当且仅当此集合包含满足 (o==null ? e==null : o.equals(e)) 的元素 e 时才返回 true。
指定者:
包含在接口 CollectionE 中
指定者:
包含在接口 SetE 中
覆盖:
包含在类 AbstractCollectionE 中
参数:
参数名称 | 参数描述 |
---|---|
o | 在此集合中检查包含的对象 |
返回:
如果此集合包含指定元素,则为 true
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定的对象不能与集合中当前的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
add
public boolean add(E e)
如果指定的元素尚不存在,则将其添加到此集合中。 更正式地说,如果集合不包含元素 e2,则将指定的元素 e 添加到此集合中,使得 (e==null ? e2==null : e.equals(e2))。 如果该集合已包含该元素,则调用将保持该集合不变并返回 false。
指定者:
添加接口CollectionE
指定者:
添加接口SetE
覆盖:
添加类 AbstractCollectionE
参数:
参数名称 | 参数描述 |
---|---|
e | 要添加到此集合的元素 |
返回:
如果此集合尚未包含指定元素,则为 true
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定的对象无法与当前在此集合中的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
remove
public boolean remove(Object o)
如果存在,则从此集合中删除指定的元素。 更正式地说,如果这个集合包含这样一个元素,则删除一个元素 e 使得 (o==null ? e==null : o.equals(e))。 如果此 set 包含该元素(或等效地,如果此 set 由于调用而更改),则返回 true。 (一旦调用返回,该集合将不包含该元素。)
指定者:
在接口 CollectionE 中删除
指定者:
在接口 SetE 中删除
覆盖:
在类 AbstractCollectionE 中删除
参数:
参数名称 | 参数描述 |
---|---|
o | 要从此集合中删除的对象(如果存在) |
返回:
如果此集合包含指定的元素,则为 true
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定的对象无法与当前在此集合中的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
clear
public void clear()
从此集合中移除所有元素。 此调用返回后,该集合将为空。
指定者:
在界面 CollectionE 中清除
指定者:
在接口 SetE 中清除
覆盖:
在类 AbstractCollectionE 中清除
addAll
public boolean addAll(Collection<? extends E> c)
将指定集合中的所有元素添加到此集合中。
指定者:
接口 CollectionE 中的 addAll
指定者:
接口 SetE 中的 addAll
覆盖:
类 AbstractCollectionE 中的 addAll
参数:
参数名称 | 参数描述 |
---|---|
c | 包含要添加到此集合的元素的集合 |
返回:
如果此集合因调用而更改,则为 true
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果提供的元素无法与集合中当前的元素进行比较 |
NullPointerException | 如果指定的集合为空或任何元素为空且此集合使用自然排序,或其比较器不允许空元素 |
subSet
public NavigableSetE subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
从接口复制的描述:NavigableSet
返回此集合的一部分的视图,其元素范围从 fromElement 到 toElement。 如果 fromElement 和 toElement 相等,则返回的集合为空,除非 fromInclusive 和 toInclusive 都为 true。 返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。 返回的集合支持该集合支持的所有可选集合操作。
返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
指定者:
接口 NavigableSetE 中的子集
参数:
参数名称 | 参数描述 |
---|---|
fromElement | 返回集的低端点 |
fromInclusive | 如果要在返回的视图中包含低端点,则为 true |
toElement | 返回集的高端点 |
toInclusive | 如果要在返回的视图中包含高端端点,则为 true |
返回:
此集合的一部分的视图,其元素范围从 fromElement(包括)到 toElement(不包括)
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 和 toElement 不能使用该集合的比较器相互比较(或者,如果该集合没有比较器,则使用自然排序)。 如果 fromElement 或 toElement 无法与集合中当前的元素进行比较,则实现可以但不是必须抛出此异常。 |
NullPointerException | 如果 fromElement 或 toElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素 |
IllegalArgumentException | 如果 fromElement 大于 toElement; 或者如果此集合本身具有受限范围,并且 fromElement 或 toElement 位于范围的范围之外。 |
headSet
public NavigableSetE headSet(E toElement, boolean inclusive)
从接口复制的描述:NavigableSet
返回此集合中元素小于(或等于,如果 inclusive 为 true)toElement 的部分的视图。 返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。 返回的集合支持该集合支持的所有可选集合操作。
返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
指定者:
接口 NavigableSetE 中的 headSet
参数:
参数名称 | 参数描述 |
---|---|
toElement | 返回集的高端点 |
inclusive | 如果要在返回的视图中包含高端端点,则为 true |
返回:
此集合的一部分的视图,其元素小于(或等于,如果 inclusive 为 true)toElement
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 toElement 与该集合的比较器不兼容(或者,如果该集合没有比较器,如果 toElement 没有实现 Comparable)。 如果 toElement 无法与集合中的当前元素进行比较,则实现可以但不是必须抛出此异常。 |
NullPointerException | 如果 toElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素 |
IllegalArgumentException | 如果这个集合本身有一个限制范围,并且 toElement 位于范围的范围之外 |
tailSet
public NavigableSetE tailSet(E fromElement, boolean inclusive)
从接口复制的描述:NavigableSet
返回此集合中元素大于(或等于,如果 inclusive 为 true)fromElement 的部分的视图。 返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。 返回的集合支持该集合支持的所有可选集合操作。
返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
指定者:
接口 NavigableSetE 中的 tailSet
参数:
参数名称 | 参数描述 |
---|---|
fromElement | 返回集的低端点 |
inclusive | 如果要在返回的视图中包含低端点,则为 true |
返回:
此集合中元素大于或等于 fromElement 的部分的视图
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 与这个集合的比较器不兼容(或者,如果集合没有比较器,如果 fromElement 没有实现 Comparable)。 如果无法将 fromElement 与当前集合中的元素进行比较,则实现可以但不是必须抛出此异常。 |
NullPointerException | 如果 fromElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素 |
IllegalArgumentException | 如果此集合本身具有受限范围,并且 fromElement 位于范围的范围之外 |
subSet
public SortedSetE subSet(E fromElement, E toElement)
从接口复制的描述:NavigableSet
返回此集合部分的视图,其元素范围从 fromElement(包括)到 toElement(不包括)。 (如果 fromElement 和 toElement 相等,则返回的集合为空。)返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。 返回的集合支持该集合支持的所有可选集合操作。
返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
等效于 subSet(fromElement, true, toElement, false)。
指定者:
接口 NavigableSetE 中的子集
指定者:
接口 SortedSetE 中的子集
参数:
参数名称 | 参数描述 |
---|---|
fromElement | 返回集的低端点(包括) |
toElement | 返回集的高端点(不包括) |
返回:
此集合的一部分的视图,其元素范围从 fromElement(包括)到 toElement(不包括)
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 和 toElement 不能使用该集合的比较器相互比较(或者,如果该集合没有比较器,则使用自然排序)。 如果 fromElement 或 toElement 无法与集合中当前的元素进行比较,则实现可以但不是必须抛出此异常。 |
NullPointerException | 如果 fromElement 或 toElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素 |
IllegalArgumentException | 如果 fromElement 大于 toElement; 或者如果这个集合本身有一个受限制的范围,并且 fromElement 或 toElement 位于范围的范围之外 |
headSet
public SortedSetE headSet(E toElement)
从接口复制的描述:NavigableSet
返回此集合中元素严格小于 toElement 的部分的视图。 返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。 返回的集合支持该集合支持的所有可选集合操作。
返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
等效于 headSet(toElement, false)。
指定者:
接口 NavigableSetE 中的 headSet
指定者:
接口 SortedSetE 中的 headSet
参数:
参数名称 | 参数描述 |
---|---|
toElement | 返回集的高端点(不包括) |
返回:
此集合中元素严格小于 toElement 的部分的视图
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 toElement 与该集合的比较器不兼容(或者,如果该集合没有比较器,如果 toElement 没有实现 Comparable)。 如果 toElement 无法与集合中的当前元素进行比较,则实现可以但不是必须抛出此异常。 |
NullPointerException | 如果 toElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素 |
IllegalArgumentException | 如果这个集合本身有一个限制范围,并且 toElement 位于范围的范围之外 |
tailSet
public SortedSetE tailSet(E fromElement)
从接口复制的描述:NavigableSet
返回此集合中元素大于或等于 fromElement 的部分的视图。 返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。 返回的集合支持该集合支持的所有可选集合操作。
返回的集合将在尝试插入超出其范围的元素时抛出 IllegalArgumentException。
等价于tailSet(fromElement, true)。
指定者:
接口 NavigableSetE 中的 tailSet
指定者:
接口 SortedSetE 中的 tailSet
参数:
参数名称 | 参数描述 |
---|---|
fromElement | 返回集的低端点(包括) |
返回:
此集合中元素大于或等于 fromElement 的部分的视图
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果 fromElement 与这个集合的比较器不兼容(或者,如果集合没有比较器,如果 fromElement 没有实现 Comparable)。 如果无法将 fromElement 与当前集合中的元素进行比较,则实现可以但不是必须抛出此异常。 |
NullPointerException | 如果 fromElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素 |
IllegalArgumentException | 如果此集合本身具有受限范围,并且 fromElement 位于范围的范围之外 |
comparator
public Comparator<? super E> comparator()
从接口复制的描述:SortedSet
返回用于对该 set 中的元素进行排序的比较器,如果此 set 使用其元素的 Comparable,则返回 null。
指定者:
接口 SortedSetE 中的比较器
返回:
用于对该集合中的元素进行排序的比较器,如果此集合使用其元素的自然排序,则为 null
first
public E first()
从接口复制的描述:SortedSet
返回此集合中当前的第一个(最低)元素。
指定者:
首先在接口 SortedSetE
返回:
当前在此集合中的第一个(最低)元素
Throws:
Throw名称 | Throw描述 |
---|---|
NoSuchElementException | 如果这个集合是空的 |
last
public E last()
从接口复制的描述:SortedSet
返回此集合中当前的最后一个(最高)元素。
指定者:
最后在接口 SortedSetE
返回:
当前在此集合中的最后一个(最高)元素
Throws:
Throw名称 | Throw描述 |
---|---|
NoSuchElementException | 如果这个集合是空的 |
lower
public E lower(E e)
从接口复制的描述:NavigableSet
返回此集合中严格小于给定元素的最大元素,如果没有这样的元素,则返回 null。
指定者:
接口 NavigableSetE 中的下层
参数:
参数名称 | 参数描述 |
---|---|
e | 要匹配的值 |
返回:
小于 e 的最大元素,如果没有这样的元素,则为 null
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能与集合中当前的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
floor
public E floor(E e)
从接口复制的描述:NavigableSet
返回此集合中小于或等于给定元素的最大元素,如果没有这样的元素,则返回 null。
指定者:
接口 NavigableSetE 中的楼层
参数:
参数名称 | 参数描述 |
---|---|
e | 要匹配的值 |
返回:
小于或等于 e 的最大元素,如果没有这样的元素,则返回 null
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能与集合中当前的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
ceiling
public E ceiling(E e)
从接口复制的描述:NavigableSet
返回此集合中大于或等于给定元素的最小元素,如果没有这样的元素,则返回 null。
指定者:
接口 NavigableSetE 中的上限
参数:
参数名称 | 参数描述 |
---|---|
e | 要匹配的值 |
返回:
大于或等于 e 的最小元素,如果没有这样的元素,则返回 null
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能与集合中当前的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
higher
public E higher(E e)
从接口复制的描述:NavigableSet
返回此集合中严格大于给定元素的最小元素,如果没有这样的元素,则返回 null。
指定者:
更高的接口 NavigableSetE
参数:
参数名称 | 参数描述 |
---|---|
e | 要匹配的值 |
返回:
大于 e 的最小元素,如果没有这样的元素,则返回 null
Throws:
Throw名称 | Throw描述 |
---|---|
ClassCastException | 如果指定元素不能与集合中当前的元素进行比较 |
NullPointerException | 如果指定元素为空且此集合使用自然排序,或者其比较器不允许空元素 |
pollFirst
public E pollFirst()
从接口复制的描述:NavigableSet
检索并删除第一个(最低)元素,如果此集合为空,则返回 null。
指定者:
接口 NavigableSetE 中的 pollFirst
返回:
第一个元素,如果此集合为空,则返回 null
pollLast
public E pollLast()
从接口复制的描述:NavigableSet
检索并删除最后一个(最高)元素,如果此集合为空,则返回 null。
指定者:
接口 NavigableSetE 中的 pollLast
返回:
最后一个元素,如果此集合为空,则返回 null
clone
public Object clone()
返回此 TreeSet 实例的浅表副本。 (元素本身不会被克隆。)
覆盖:
在类 Object 中克隆
返回:
这个集合的浅拷贝
spliterator
public SpliteratorE spliterator()
在此集合中的元素上创建一个后期绑定和快速失败的拆分器。
Spliterator 报告 Spliterator#SIZED、Spliterator#DISTINCT、Spliterator#SORTED 和 Spliterator#ORDERED。 覆盖实现应记录附加特征值的报告。
如果树集的比较器为空,则拆分器的比较器为空。 否则,拆分器的比较器与树集的比较器相同或施加相同的总排序。
指定者:
接口 CollectionE 中的分离器
指定者:
接口 IterableE 中的分离器
指定者:
接口 SetE 中的分离器
指定者:
接口 SortedSetE 中的拆分器
返回:
此集合中元素的拆分器