TreeSet() 构造一个新的空 set,该 set 根据其元素的自然顺序进行排序。
TreeSet(Collection extendsE> c) 构造一个包含指定 collection 元素的新 TreeSet,它按照其元素的自然顺序进行排序。
TreeSet(Comparator superE> comparator) 构造一个新的空 TreeSet,它根据指定比较器进行排序。
TreeSet(SortedSet s) 构造一个与指定有序 set 具有相同映射关系和相同排序的新 TreeSet。
方法摘要
boolean add(E e) 将指定的元素添加到此 set(如果该元素尚未存在于 set 中)。
boolean addAll(Collection extendsE> c) 将指定 collection 中的所有元素添加到此 set 中。
E ceiling(E e) 返回此 set 中大于等于给定元素的最小元素;如果不存在这样的元素,则返回null。
void clear() 移除此 set 中的所有元素。
Object clone() 返回TreeSet实例的浅表副本。
Comparator superE> comparator() 返回对此 set 中的元素进行排序的比较器;如果此 set 使用其元素的自然顺序,则返回null。
boolean contains(Object o) 如果此 set 包含指定的元素,则返回true。
Iterator descendingIterator() 返回在此 set 元素上按降序进行迭代的迭代器。
NavigableSet descendingSet() 返回此 set 中所包含元素的逆序视图。
E first() 返回此 set 中当前第一个(最低)元素。
E floor(E e) 返回此 set 中小于等于给定元素的最大元素;如果不存在这样的元素,则返回null。
SortedSet headSet(E toElement) 返回此
set 的部分视图,其元素严格小于toElement。
NavigableSet headSet(E toElement,
boolean inclusive) 返回此 set 的部分视图,其元素小于(或等于,如果inclusive为 true)toElement。
E higher(E e) 返回此 set 中严格大于给定元素的最小元素;如果不存在这样的元素,则返回null。
boolean isEmpty() 如果此 set 不包含任何元素,则返回true。
Iterator iterator() 返回在此 set 中的元素上按升序进行迭代的迭代器。
E last() 返回此 set 中当前最后一个(最高)元素。
E lower(E e) 返回此 set 中严格小于给定元素的最大元素;如果不存在这样的元素,则返回null。
E pollFirst() 获取并移除第一个(最低)元素;如果此 set 为空,则返回null。
E pollLast() 获取并移除最后一个(最高)元素;如果此 set 为空,则返回null。
boolean remove(Object o) 将指定的元素从 set 中移除(如果该元素存在于此 set 中)。
int size() 返回 set 中的元素数(set 的容量)。
NavigableSet subSet(E fromElement,
boolean fromInclusive,E toElement, boolean toInclusive) 返回此 set 的部分视图,其元素范围从fromElement到toElement。
SortedSet subSet(E fromElement,E toElement) 返回此
set 的部分视图,其元素从fromElement(包括)到toElement(不包括)。
SortedSet tailSet(E fromElement) 返回此
set 的部分视图,其元素大于等于fromElement。
NavigableSet tailSet(E fromElement,
boolean inclusive) 返回此 set 的部分视图,其元素大于(或等于,如果inclusive为
true)fromElement。
从类 java.util.AbstractSet继承的方法
equals,hashCode,removeAll
从类 java.util.AbstractCollection继承的方法
containsAll,retainAll,toArray,toArray,toString
从类 java.lang.Object继承的方法
finalize,getClass,notify,notifyAll,wait,wait,wait
从接口 java.util.Set继承的方法
containsAll,equals,hashCode,removeAll,retainAll,toArray,toArray
构造方法详细信息
TreeSet
publicTreeSet()
构造一个新的空 set,该 set 根据其元素的自然顺序进行排序。插入该 set 的所有元素都必须实现
Comparable
接口。另外,所有这些元素都必须是可互相比较的:对于 set 中的任意两个元素e1和e2,执行e1.compareTo(e2)都不得抛出ClassCastException。如果用户试图将违反此约束的元素添加到 set(例如,用户试图将字符串元素添加到其元素为整数的
set 中),则add调用将抛出ClassCastException。
TreeSet
publicTreeSet(Comparator superE> comparator)
构造一个新的空 TreeSet,它根据指定比较器进行排序。插入到该 set 的所有元素都必须能够由指定比较器进行相互比较:对于 set
中的任意两个元素e1和e2,执行comparator.compare(e1,
e2)都不得抛出ClassCastException。如果用户试图将违反此约束的元素添加到 set 中,则add调用将抛出ClassCastException。
参数:
comparator- 将用来对此 set 进行排序的比较器。如果该参数为null,则使用元素的
自然顺序
。
TreeSet
publicTreeSet(Collection extendsE> c)
构造一个包含指定 collection 元素的新 TreeSet,它按照其元素的自然顺序进行排序。插入该 set 的所有元素都必须实现
Comparable
接口。另外,所有这些元素都必须是可互相比较的:对于 set 中的任意两个元素e1和e2,执行e1.compareTo(e2)都不得抛出ClassCastException。
参数:
c- 一个 collection,其元素将组成新的 set
抛出:
ClassCastException-
如果c中的元素不是
Comparable
,或者是不可相互比较的
NullPointerException- 如果指定 collection 为 null
TreeSet
publicTreeSet(SortedSet s)
构造一个与指定有序 set 具有相同映射关系和相同排序的新 TreeSet。
参数:
s- 一个有序 set,其元素将组成新 set
抛出:
NullPointerException- 如果指定有序 set 为 null
方法详细信息
iterator
publicIteratoriterator()
返回在此 set 中的元素上按升序进行迭代的迭代器。
指定者:
接口Iterable中的iterator
指定者:
接口Collection中的iterator
指定者:
接口NavigableSet中的iterator
指定者:
接口Set中的iterator
指定者:
类AbstractCollection中的iterator
返回:
在此 set 中的元素上按升序进行迭代的迭代器
descendingIterator
publicIteratordescendingIterator()
返回在此 set 元素上按降序进行迭代的迭代器。
指定者:
接口NavigableSet中的descendingIterator
返回:
在此 set 元素上按降序进行迭代的迭代器
从以下版本开始:
1.6
descendingSet
publicNavigableSetdescendingSet()
从接口NavigableSet复制的描述
返回此 set 中所包含元素的逆序视图。降序 set 受此 set 的支持,因此对此 set 的更改将反映在降序 set 中,反之亦然。如果在对任一
set 进行迭代的同时修改了任一 set(通过迭代器自己的remove操作除外),则迭代结果是不确定的。
返回 set 的顺序等于Collections.reverseOrder(comparator())。表达式s.descendingSet().descendingSet()返回的s视图基本等于s。
指定者:
接口NavigableSet中的descendingSet
返回:
此 set 的逆序视图
从以下版本开始:
1.6
size
public intsize()
返回 set 中的元素数(set 的容量)。
指定者:
接口Collection中的size
指定者:
接口Set中的size
指定者:
类AbstractCollection中的size
返回:
此 set 中的元素数(set 的容量)
isEmpty
public booleanisEmpty()
如果此 set 不包含任何元素,则返回true。
指定者:
接口Collection中的isEmpty
指定者:
接口Set中的isEmpty
覆盖:
类AbstractCollection中的isEmpty
返回:
如果此 set 不包含任何元素,则返回true
contains
public booleancontains(Object o)
如果此 set 包含指定的元素,则返回true。更确切地讲,当且仅当此 set 包含满足(o==null ? e==null : o.equals(e))的元素e时,返回true。
指定者:
接口Collection中的contains
指定者:
接口Set中的contains
覆盖:
类AbstractCollection中的contains
参数:
o- 将检查是否包含在此 set 中的对象
返回:
如果此 set 包含指定元素,则返回true
抛出:
ClassCastException-
如果指定对象无法与该 set 中的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
add
public booleanadd(E e)
将指定的元素添加到此 set(如果该元素尚未存在于 set 中)。更确切地讲,如果该 set 不包含满足(e==null ? e2==null : e.equals(e2))的元素e2,则将指定元素e添加到此 set 中。如果此 set 已经包含这样的元素,则该调用不改变此 set 并返回false。
指定者:
接口Collection中的add
指定者:
接口Set中的add
覆盖:
类AbstractCollection中的add
参数:
e- 要添加到此 set 的对象
返回:
如果此 set 尚未包含指定元素,则返回true
抛出:
ClassCastException-
如果指定对象无法与此 set 的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
remove
public booleanremove(Object o)
将指定的元素从 set 中移除(如果该元素存在于此 set 中)。更确切地讲,如果 set 中包含满足(o==null ? e==null : o.equals(e))的元素e,则移除一个这样的元素。如果此 set
包含这样的元素(或者此 set 由于调用而发生更改),则返回true。(一旦调用返回,则此 set 不再包含这样的元素。)
指定者:
接口Collection中的remove
指定者:
接口Set中的remove
覆盖:
类AbstractCollection中的remove
参数:
o- 将从此 set 中移除的对象(如果存在)
返回:
如果此 set 包含指定元素,则返回true
抛出:
ClassCastException-
如果指定对象无法与该 set 中的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
clear
public voidclear()
移除此 set 中的所有元素。在此调用返回之后,set 将为空。
指定者:
接口Collection中的clear
指定者:
接口Set中的clear
覆盖:
类AbstractCollection中的clear
addAll
public booleanaddAll(Collection extendsE> c)
将指定 collection 中的所有元素添加到此 set 中。
指定者:
接口Collection中的addAll
指定者:
接口Set中的addAll
覆盖:
类AbstractCollection中的addAll
参数:
c- 包含要添加到此 set 的元素的 collection
返回:
如果此 set 由于调用而发生更改,则返回true
抛出:
ClassCastException-
如果提供的元素无法与 set 中的当前元素进行比较
NullPointerException- 如果指定 collection 为 null,或者任何元素为 null 并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
另请参见:
AbstractCollection.add(Object)
subSet
publicNavigableSetsubSet(E fromElement,
boolean fromInclusive,E toElement,
boolean toInclusive)
从接口NavigableSet复制的描述
返回此 set 的部分视图,其元素范围从fromElement到toElement。如果fromElement和toElement相等,则返回的 set 为空,除非fromExclusive和toExclusive都为 true。返回的 set 受此 set
支持,所以在返回 set 中的更改将反映在此 set 中,反之亦然。返回 set 支持此 set 支持的所有可选 set 操作。
如果试图在返回 set 的范围之外插入元素,则返回的 set 将抛出IllegalArgumentException。
指定者:
接口NavigableSet中的subSet
参数:
fromElement- 返回 set 的低端点
fromInclusive- 如果低端点要包含在返回的视图中,则为true
toElement- 返回 set 的高端点
toInclusive- 如果高端点要包含在返回的视图中,则为true
返回:
此 set 的部分视图,其元素范围从fromElement(包括)到toElement(不包括)
抛出:
ClassCastException-
如果不能使用此 set 的比较器或者使用自然顺序(如果 set 没有比较器)比较fromElement和toElement。如果fromElement或toElement不能与
set 中的当前元素进行比较,则实现可以(但不是必须)抛出此异常。
NullPointerException- 如果fromElement或toElement为 null,并且此 set
使用自然顺序,或者其比较器不允许使用 null 元素
IllegalArgumentException- 如果fromElement大于toElement;如果此 set 本身有范围限制,并且fromElement或toElement位于范围的边界之外。
从以下版本开始:
1.6
headSet
publicNavigableSetheadSet(E toElement,
boolean inclusive)
从接口NavigableSet复制的描述
返回此 set 的部分视图,其元素小于(或等于,如果inclusive为
true)toElement。返回的 set 受此 set 支持,所以在返回 set 中的更改将反映在此 set 中,反之亦然。返回
set 支持此 set 支持的所有可选 set 操作。
如果试图在返回 set 的范围之外插入元素,则返回的 set 将抛出IllegalArgumentException。
指定者:
接口NavigableSet中的headSet
参数:
toElement- 返回 set 的高端点
inclusive- 如果高端点要包含在返回的视图中,则为true
返回:
此 set 的部分视图,其元素小于(或等于,如果inclusive为
true)toElement
抛出:
ClassCastException-
如果toElement与此 set 的比较器不兼容(如果 set 没有比较器;如果toElement没有实现
Comparable
)。如果toElement不能与 set 中的当前元素进行比较,则实现可以(但不是必须)抛出此异常。
NullPointerException- 如果toElement为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
IllegalArgumentException- 如果此 set 本身有范围限制,并且toElement位于范围的边界之外
从以下版本开始:
1.6
tailSet
publicNavigableSettailSet(E fromElement,
boolean inclusive)
从接口NavigableSet复制的描述
返回此 set 的部分视图,其元素大于(或等于,如果inclusive为
true)fromElement。返回的 set 受此 set 支持,所以在返回 set 中的更改将反映在此 set
中,反之亦然。返回 set 支持此 set 支持的所有可选 set 操作。
如果试图在返回 set 的范围之外插入元素,则返回的 set 将抛出IllegalArgumentException。
指定者:
接口NavigableSet中的tailSet
参数:
fromElement- 返回 set 的低端点
inclusive- 如果低端点要包含在返回的视图中,则为true
返回:
此 set 的部分视图,其元素大于等于fromElement
抛出:
ClassCastException-
如果fromElement与此 set 的比较器不兼容(如果 set 没有任何比较器;如果fromElement没有实现
Comparable
)。如果fromElement不能与 set 中的当前元素进行比较,则实现可以(但不是必须)抛出此异常。
NullPointerException- 如果fromElement为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
IllegalArgumentException- 如果此 set 本身有范围限制,并且fromElement位于范围的边界之外
从以下版本开始:
1.6
subSet
publicSortedSetsubSet(E fromElement,E toElement)
从接口NavigableSet复制的描述
返回此 set 的部分视图,其元素从fromElement(包括)到toElement(不包括)。(如果fromElement和toElement相等,则返回空的 set)。返回的 set 受此 set 支持,所以在返回
set 中的更改将反映在此 set 中,反之亦然。返回的 set 支持此 set 支持的所有可选 set 操作。
如果试图在返回 set 的范围之外插入元素,则返回的 set 将抛出IllegalArgumentException。
等效于subSet(fromElement, true, toElement, false)。
指定者:
接口NavigableSet中的subSet
指定者:
接口SortedSet中的subSet
参数:
fromElement- 返回 set 的低端点(包括)
toElement- 返回 set 的高端点(不包括)
返回:
此 set 的部分视图,其元素的范围从fromElement(包括)到toElement(不包括)
抛出:
ClassCastException-
如果无法使用此 set 的比较器(如果 set 没有比较器,则使用自然顺序)比较fromElement和toElement。如果fromElement或toElement不能与 set
中的当前元素进行比较,则实现可以(但不是必须)抛出此异常。
NullPointerException- 如果fromElement或toElement为 null,并且此 set
使用自然顺序,或者其比较器不允许使用 null 元素
IllegalArgumentException- 如果fromElement大于toElement;如果此 set 本身有范围限制,并且fromElement或toElement位于范围的边界之外
headSet
publicSortedSetheadSet(E toElement)
从接口NavigableSet复制的描述
返回此 set 的部分视图,其元素严格小于toElement。返回的 set 受此 set 支持,所以在返回 set
中的更改将反映在此 set 中,反之亦然。返回的 set 支持此 set 支持的所有可选 set 操作。
如果试图在返回 set 的范围之外插入元素,则返回的 set 将抛出IllegalArgumentException。
等效于headSet(toElement, false)。
指定者:
接口NavigableSet中的headSet
指定者:
接口SortedSet中的headSet
参数:
toElement- 返回 set 的高端点(不包括)
返回:
此 set 的部分视图,其元素严格小于toElement
抛出:
ClassCastException-
如果toElement与此 set 的比较器不兼容(如果 set 没有比较器;如果toElement没有实现
Comparable
)。如果toElement不能与 set 中的当前元素进行比较,则实现可以(但不是必须)抛出此异常。
NullPointerException- 如果toElement为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
IllegalArgumentException- 如果此 set 本身有范围限制,并且toElement位于范围的边界之外
tailSet
publicSortedSettailSet(E fromElement)
从接口NavigableSet复制的描述
返回此 set 的部分视图,其元素大于等于fromElement。返回的 set 受此 set 支持,所以在返回 set
中的更改将反映在此 set 中,反之亦然。返回的 set 支持此 set 支持的所有可选 set 操作。
如果试图在返回 set 的范围之外插入元素,则返回的 set 将抛出IllegalArgumentException。
等效于tailSet(fromElement, true)。
指定者:
接口NavigableSet中的tailSet
指定者:
接口SortedSet中的tailSet
参数:
fromElement- 返回 set 的低端点(包括)
返回:
此 set 的部分视图,其元素大于等于fromElement
抛出:
ClassCastException-
如果fromElement与此 set 的比较器不兼容(如果 set 没有比较器;如果fromElement没有实现
Comparable
)。如果fromElement不能与 set 中的当前元素进行比较,则实现可以(但不是必须)抛出此异常。
NullPointerException- 如果fromElement为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
IllegalArgumentException- 如果此 set 本身有范围限制,并且fromElement位于范围的边界之外
comparator
publicComparator superE>comparator()
从接口SortedSet复制的描述
返回对此 set 中的元素进行排序的比较器;如果此 set 使用其元素的
自然顺序
,则返回null。
指定者:
接口SortedSet中的comparator
返回:
用来对此 set 中的元素进行排序的比较器;如果此 set 使用其元素的自然顺序,则返回null
first
publicEfirst()
从接口SortedSet复制的描述
返回此 set 中当前第一个(最低)元素。
指定者:
接口SortedSet中的first
返回:
此 set 中当前第一个(最低)元素
抛出:
NoSuchElementException- 如果此 set 为空
last
publicElast()
从接口SortedSet复制的描述
返回此 set 中当前最后一个(最高)元素。
指定者:
接口SortedSet中的last
返回:
此 set 中当前最后一个(最高)元素
抛出:
NoSuchElementException- 如果此 set 为空
lower
publicElower(E e)
从接口NavigableSet复制的描述
返回此 set 中严格小于给定元素的最大元素;如果不存在这样的元素,则返回null。
指定者:
接口NavigableSet中的lower
参数:
e- 要匹配的值
返回:
小于e的最大元素;如果不存在这样的元素,则返回null
抛出:
ClassCastException-
如果指定元素不能与 set 中的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
从以下版本开始:
1.6
floor
publicEfloor(E e)
从接口NavigableSet复制的描述
返回此 set 中小于等于给定元素的最大元素;如果不存在这样的元素,则返回null。
指定者:
接口NavigableSet中的floor
参数:
e- 要匹配的值
返回:
小于等于e的最大元素;如果不存在这样的元素,则返回null
抛出:
ClassCastException-
如果指定元素不能与 set 中的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
从以下版本开始:
1.6
ceiling
publicEceiling(E e)
从接口NavigableSet复制的描述
返回此 set 中大于等于给定元素的最小元素;如果不存在这样的元素,则返回null。
指定者:
接口NavigableSet中的ceiling
参数:
e- 要匹配的值
返回:
大于等于e的最小元素;如果不存在这样的元素,则返回null
抛出:
ClassCastException-
如果指定元素不能与 set 中的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
从以下版本开始:
1.6
higher
publicEhigher(E e)
从接口NavigableSet复制的描述
返回此 set 中严格大于给定元素的最小元素;如果不存在这样的元素,则返回null。
指定者:
接口NavigableSet中的higher
参数:
e- 要匹配的值
返回:
大于e的最小元素;如果不存在这样的元素,则返回null
抛出:
ClassCastException-
如果指定元素不能与 set 中的当前元素进行比较
NullPointerException- 如果指定元素为 null,并且此 set 使用自然顺序,或者其比较器不允许使用 null 元素
从以下版本开始:
1.6
pollFirst
publicEpollFirst()
从接口NavigableSet复制的描述
获取并移除第一个(最低)元素;如果此 set 为空,则返回null。
指定者:
接口NavigableSet中的pollFirst
返回:
第一个元素;如果此 set 为空,则返回null
从以下版本开始:
1.6
pollLast
publicEpollLast()
从接口NavigableSet复制的描述
获取并移除最后一个(最高)元素;如果此 set 为空,则返回null。
指定者:
接口NavigableSet中的pollLast
返回:
最后一个元素;如果此 set 为空,则返回null
从以下版本开始:
1.6
clone
publicObjectclone()
返回TreeSet实例的浅表副本。(这些元素本身不被复制。)
覆盖:
类Object中的clone
返回:
此 set 的浅表副本
另请参见:
Cloneable