鴻蒙OS TreeSet

2022-08-10 17:05 更新

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 實(shí)現(xiàn)。 元素使用它們的 Comparable 排序,或者由在集合創(chuàng)建時(shí)提供的 Comparator 排序,具體取決于使用的構(gòu)造函數(shù)。

此實(shí)現(xiàn)為基本操作(添加、刪除和包含)提供有保證的 log(n) 時(shí)間成本。

請(qǐng)注意,如果要正確實(shí)現(xiàn) Set 接口,集合維護(hù)的順序(無論是否提供顯式比較器)必須與 equals 一致。 (參見 Comparable 或 Comparator 以獲得與 equals 一致的精確定義。)這是因?yàn)?Set 接口是根據(jù) equals 操作定義的,但 TreeSet 實(shí)例使用其 compareTo(或 compare)方法執(zhí)行所有元素比較,所以兩個(gè) 從集合的角度來看,這種方法認(rèn)為相等的元素是相等的。 一個(gè)集合的行為是明確定義的,即使它的順序與equals不一致; 它只是不遵守 Set 接口的一般約定。

請(qǐng)注意,此實(shí)現(xiàn)不同步。 如果多個(gè)線程同時(shí)訪問一個(gè)樹集,并且至少有一個(gè)線程修改了該樹集,則它必須在外部同步。 這通常是通過在一些自然封裝集合的對(duì)象上同步來完成的。 如果不存在這樣的對(duì)象,則應(yīng)使用 Collections#synchronizedSortedSet 方法“包裝”該集合。 這最好在創(chuàng)建時(shí)完成,以防止對(duì)集合的意外不同步訪問:

   SortedSet s = Collections.synchronizedSortedSet(new TreeSet(...));

此類的迭代器方法返回的迭代器是快速失敗的:如果在創(chuàng)建迭代器后的任何時(shí)間修改集合,除了通過迭代器自己的 remove 方法之外的任何方式,迭代器將拋出 ConcurrentModificationException。 因此,面對(duì)并發(fā)修改,迭代器快速而干凈地失敗,而不是在未來不確定的時(shí)間冒任意的、非確定性的行為。

請(qǐng)注意,不能保證迭代器的快速失敗行為,因?yàn)橐话銇碚f,在存在不同步的并發(fā)修改的情況下,不可能做出任何硬保證。 快速失敗的迭代器會(huì)盡最大努力拋出 ConcurrentModificationException。 因此,編寫一個(gè)依賴于這個(gè)異常的正確性的程序是錯(cuò)誤的:迭代器的快速失敗行為應(yīng)該只用于檢測(cè)錯(cuò)誤。

此類是 Java 集合框架的成員。

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
TreeSet() 構(gòu)造一個(gè)新的空樹集,根據(jù)其元素的自然順序排序。
TreeSet(Collection<? extends E> c) 構(gòu)造一個(gè)包含指定集合中元素的新樹集,根據(jù)其元素的自然順序排序。
TreeSet(Comparator<? super E> comparator) 構(gòu)造一個(gè)新的空樹集,根據(jù)指定的比較器排序。
TreeSet(SortedSetE s) 構(gòu)造一個(gè)包含相同元素并使用與指定排序集相同的順序的新樹集。

方法總結(jié)

修飾符和類型 方法 描述
boolean add(E e) 如果指定的元素尚不存在,則將其添加到此集合中。
boolean addAll(Collection<? extends E> c) 將指定集合中的所有元素添加到此集合中。
E ceiling(E e) 返回此集合中大于或等于給定元素的最小元素,如果沒有這樣的元素,則返回 null。
void clear() 從此集合中移除所有元素。
Object clone() 返回此 TreeSet 實(shí)例的淺表副本。
Comparator<? super E> comparator() 返回用于對(duì)該 set 中的元素進(jìn)行排序的比較器,如果此 set 使用其元素的 Comparable,則返回 null。
boolean contains(Object o) 如果此集合包含指定的元素,則返回 true。
IteratorE descendingIterator() 按降序返回此 set 中元素的迭代器。
NavigableSetE descendingSet() 返回此集合中包含的元素的逆序視圖。
E first() 返回此集合中當(dāng)前的第一個(gè)(最低)元素。
E floor(E e) 返回此集合中小于或等于給定元素的最大元素,如果沒有這樣的元素,則返回 null。
SortedSetE headSet(E toElement) 返回此集合中元素嚴(yán)格小于 toElement 的部分的視圖。
NavigableSetE headSet(E toElement, boolean inclusive) 返回此集合中元素小于(或等于,如果 inclusive 為真)toElement 的部分的視圖。
E higher(E e) 返回此集合中嚴(yán)格大于給定元素的最小元素,如果沒有這樣的元素,則返回 null。
boolean isEmpty() 如果此集合不包含任何元素,則返回 true。
IteratorE iterator() 按升序返回此 set 中元素的迭代器。
E last() 返回此集合中當(dāng)前的最后一個(gè)(最高)元素。
E lower(E e) 返回此集合中嚴(yán)格小于給定元素的最大元素,如果沒有這樣的元素,則返回 null。
E pollFirst() 檢索并刪除第一個(gè)(最低)元素,如果此集合為空,則返回 null。
E pollLast() 檢索并刪除最后一個(gè)(最高)元素,如果此集合為空,則返回 null。
boolean remove(Object o) 如果存在,則從此集合中刪除指定的元素。
int size() 返回此集合中的元素?cái)?shù)(其基數(shù))。
SpliteratorE spliterator() 在此集合中的元素上創(chuàng)建一個(gè)后期綁定和快速失敗的拆分器。
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

構(gòu)造函數(shù)詳細(xì)信息

TreeSet

public TreeSet()

構(gòu)造一個(gè)新的空樹集,根據(jù)其元素的自然順序排序。 插入集合中的所有元素都必須實(shí)現(xiàn) Comparable 接口。 此外,所有此類元素必須相互比較:e1.compareTo(e2) 不得為集合中的任何元素 e1 和 e2 拋出 ClassCastException。 如果用戶嘗試將元素添加到違反此約束的集合中(例如,用戶嘗試將字符串元素添加到元素為整數(shù)的集合中),則 add 調(diào)用將拋出 ClassCastException。

TreeSet

public TreeSet(Comparator<? super E> comparator)

構(gòu)造一個(gè)新的空樹集,根據(jù)指定的比較器排序。 插入集合中的所有元素必須通過指定的比較器相互比較:comparator.compare(e1, e2) 不得為集合中的任何元素 e1 和 e2 拋出 ClassCastException。 如果用戶嘗試向集合中添加違反此約束的元素,則 add 調(diào)用將拋出 ClassCastException。

參數(shù):

參數(shù)名稱 參數(shù)描述
comparator 將用于訂購此集合的比較器。 如果為 null,則將使用元素的 Comparable。

TreeSet

public TreeSet(Collection<? extends E> c)

構(gòu)造一個(gè)包含指定集合中元素的新樹集,根據(jù)其元素的自然順序排序。 插入集合中的所有元素都必須實(shí)現(xiàn) Comparable 接口。 此外,所有此類元素必須相互比較:e1.compareTo(e2) 不得為集合中的任何元素 e1 和 e2 拋出 ClassCastException。

參數(shù):

參數(shù)名稱 參數(shù)描述
c 其元素將構(gòu)成新集合的集合

Throws:

Throw名稱 Throw描述
ClassCastException 如果 c 中的元素不可比較,或不可相互比較
NullPointerException 如果指定的集合為空

TreeSet

public TreeSet(SortedSetE s)

構(gòu)造一個(gè)包含相同元素并使用與指定排序集相同的順序的新樹集。

參數(shù):

參數(shù)名稱 參數(shù)描述
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()

從接口復(fù)制的描述:NavigableSet

返回此集合中包含的元素的逆序視圖。 降序集由該集支持,因此對(duì)集的更改會(huì)反映在降序集中,反之亦然。 如果在對(duì)任一集進(jìn)行迭代時(shí)修改了任一集(通過迭代器自己的刪除操作除外),則迭代的結(jié)果是未定義的。

返回的集合具有等價(jià)于 Collections#reverseOrder(Comparator)(comparator()) 的排序。 表達(dá)式 s.descendingSet().descendingSet() 返回一個(gè)與 s 基本等價(jià)的 s 視圖。

指定者:

接口 NavigableSetE 中的 descendingSet

返回:

該集合的逆序視圖

size

public int size()

返回此集合中的元素?cái)?shù)(其基數(shù))。

指定者:

接口 CollectionE 中的大小

指定者:

接口 SetE 中的大小

指定者:

AbstractCollectionE 類中的大小

返回:

該集合中的元素?cái)?shù)量(其基數(shù))

isEmpty

public boolean isEmpty()

如果此集合不包含任何元素,則返回 true。

指定者:

接口 CollectionE 中的 isEmpty

指定者:

接口 SetE 中的 isEmpty

覆蓋:

類 AbstractCollectionE 中的 isEmpty

返回:

如果此集合不包含任何元素,則為 true

contains

public boolean contains(Object o)

如果此集合包含指定的元素,則返回 true。 更正式地說,當(dāng)且僅當(dāng)此集合包含滿足 (o==null ? e==null : o.equals(e)) 的元素 e 時(shí)才返回 true。

指定者:

包含在接口 CollectionE 中

指定者:

包含在接口 SetE 中

覆蓋:

包含在類 AbstractCollectionE 中

參數(shù):

參數(shù)名稱 參數(shù)描述
o 在此集合中檢查包含的對(duì)象

返回:

如果此集合包含指定元素,則為 true

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定的對(duì)象不能與集合中當(dāng)前的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

add

public boolean add(E e)

如果指定的元素尚不存在,則將其添加到此集合中。 更正式地說,如果集合不包含元素 e2,則將指定的元素 e 添加到此集合中,使得 (e==null ? e2==null : e.equals(e2))。 如果該集合已包含該元素,則調(diào)用將保持該集合不變并返回 false。

指定者:

添加接口CollectionE

指定者:

添加接口SetE

覆蓋:

添加類 AbstractCollectionE

參數(shù):

參數(shù)名稱 參數(shù)描述
e 要添加到此集合的元素

返回:

如果此集合尚未包含指定元素,則為 true

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定的對(duì)象無法與當(dāng)前在此集合中的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

remove

public boolean remove(Object o)

如果存在,則從此集合中刪除指定的元素。 更正式地說,如果這個(gè)集合包含這樣一個(gè)元素,則刪除一個(gè)元素 e 使得 (o==null ? e==null : o.equals(e))。 如果此 set 包含該元素(或等效地,如果此 set 由于調(diào)用而更改),則返回 true。 (一旦調(diào)用返回,該集合將不包含該元素。)

指定者:

在接口 CollectionE 中刪除

指定者:

在接口 SetE 中刪除

覆蓋:

在類 AbstractCollectionE 中刪除

參數(shù):

參數(shù)名稱 參數(shù)描述
o 要從此集合中刪除的對(duì)象(如果存在)

返回:

如果此集合包含指定的元素,則為 true

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定的對(duì)象無法與當(dāng)前在此集合中的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

clear

public void clear()

從此集合中移除所有元素。 此調(diào)用返回后,該集合將為空。

指定者:

在界面 CollectionE 中清除

指定者:

在接口 SetE 中清除

覆蓋:

在類 AbstractCollectionE 中清除

addAll

public boolean addAll(Collection<? extends E> c)

將指定集合中的所有元素添加到此集合中。

指定者:

接口 CollectionE 中的 addAll

指定者:

接口 SetE 中的 addAll

覆蓋:

類 AbstractCollectionE 中的 addAll

參數(shù):

參數(shù)名稱 參數(shù)描述
c 包含要添加到此集合的元素的集合

返回:

如果此集合因調(diào)用而更改,則為 true

Throws:

Throw名稱 Throw描述
ClassCastException 如果提供的元素?zé)o法與集合中當(dāng)前的元素進(jìn)行比較
NullPointerException 如果指定的集合為空或任何元素為空且此集合使用自然排序,或其比較器不允許空元素

subSet

public NavigableSetE subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)

從接口復(fù)制的描述:NavigableSet

返回此集合的一部分的視圖,其元素范圍從 fromElement 到 toElement。 如果 fromElement 和 toElement 相等,則返回的集合為空,除非 fromInclusive 和 toInclusive 都為 true。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

指定者:

接口 NavigableSetE 中的子集

參數(shù):

參數(shù)名稱 參數(shù)描述
fromElement 返回集的低端點(diǎn)
fromInclusive 如果要在返回的視圖中包含低端點(diǎn),則為 true
toElement 返回集的高端點(diǎn)
toInclusive 如果要在返回的視圖中包含高端端點(diǎn),則為 true

返回:

此集合的一部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)

Throws:

Throw名稱 Throw描述
ClassCastException 如果 fromElement 和 toElement 不能使用該集合的比較器相互比較(或者,如果該集合沒有比較器,則使用自然排序)。 如果 fromElement 或 toElement 無法與集合中當(dāng)前的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException 如果 fromElement 或 toElement 為 null 并且此集合使用自然排序,或者其比較器不允許 null 元素
IllegalArgumentException 如果 fromElement 大于 toElement; 或者如果此集合本身具有受限范圍,并且 fromElement 或 toElement 位于范圍的范圍之外。

headSet

public NavigableSetE headSet(E toElement, boolean inclusive)

從接口復(fù)制的描述:NavigableSet

返回此集合中元素小于(或等于,如果 inclusive 為 true)toElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

指定者:

接口 NavigableSetE 中的 headSet

參數(shù):

參數(shù)名稱 參數(shù)描述
toElement 返回集的高端點(diǎn)
inclusive 如果要在返回的視圖中包含高端端點(diǎn),則為 true

返回:

此集合的一部分的視圖,其元素小于(或等于,如果 inclusive 為 true)toElement

Throws:

Throw名稱 Throw描述
ClassCastException 如果 toElement 與該集合的比較器不兼容(或者,如果該集合沒有比較器,如果 toElement 沒有實(shí)現(xiàn) Comparable)。 如果 toElement 無法與集合中的當(dāng)前元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException 如果 toElement 為 null 并且此集合使用自然排序,或者其比較器不允許 null 元素
IllegalArgumentException 如果這個(gè)集合本身有一個(gè)限制范圍,并且 toElement 位于范圍的范圍之外

tailSet

public NavigableSetE tailSet(E fromElement, boolean inclusive)

從接口復(fù)制的描述:NavigableSet

返回此集合中元素大于(或等于,如果 inclusive 為 true)fromElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

指定者:

接口 NavigableSetE 中的 tailSet

參數(shù):

參數(shù)名稱 參數(shù)描述
fromElement 返回集的低端點(diǎn)
inclusive 如果要在返回的視圖中包含低端點(diǎn),則為 true

返回:

此集合中元素大于或等于 fromElement 的部分的視圖

Throws:

Throw名稱 Throw描述
ClassCastException 如果 fromElement 與這個(gè)集合的比較器不兼容(或者,如果集合沒有比較器,如果 fromElement 沒有實(shí)現(xiàn) Comparable)。 如果無法將 fromElement 與當(dāng)前集合中的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException 如果 fromElement 為 null 并且此集合使用自然排序,或者其比較器不允許 null 元素
IllegalArgumentException 如果此集合本身具有受限范圍,并且 fromElement 位于范圍的范圍之外

subSet

public SortedSetE subSet(E fromElement, E toElement)

從接口復(fù)制的描述:NavigableSet

返回此集合部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)。 (如果 fromElement 和 toElement 相等,則返回的集合為空。)返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

等效于 subSet(fromElement, true, toElement, false)。

指定者:

接口 NavigableSetE 中的子集

指定者:

接口 SortedSetE 中的子集

參數(shù):

參數(shù)名稱 參數(shù)描述
fromElement 返回集的低端點(diǎn)(包括)
toElement 返回集的高端點(diǎn)(不包括)

返回:

此集合的一部分的視圖,其元素范圍從 fromElement(包括)到 toElement(不包括)

Throws:

Throw名稱 Throw描述
ClassCastException 如果 fromElement 和 toElement 不能使用該集合的比較器相互比較(或者,如果該集合沒有比較器,則使用自然排序)。 如果 fromElement 或 toElement 無法與集合中當(dāng)前的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException 如果 fromElement 或 toElement 為 null 并且此集合使用自然排序,或者其比較器不允許 null 元素
IllegalArgumentException 如果 fromElement 大于 toElement; 或者如果這個(gè)集合本身有一個(gè)受限制的范圍,并且 fromElement 或 toElement 位于范圍的范圍之外

headSet

public SortedSetE headSet(E toElement)

從接口復(fù)制的描述:NavigableSet

返回此集合中元素嚴(yán)格小于 toElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

等效于 headSet(toElement, false)。

指定者:

接口 NavigableSetE 中的 headSet

指定者:

接口 SortedSetE 中的 headSet

參數(shù):

參數(shù)名稱 參數(shù)描述
toElement 返回集的高端點(diǎn)(不包括)

返回:

此集合中元素嚴(yán)格小于 toElement 的部分的視圖

Throws:

Throw名稱 Throw描述
ClassCastException 如果 toElement 與該集合的比較器不兼容(或者,如果該集合沒有比較器,如果 toElement 沒有實(shí)現(xiàn) Comparable)。 如果 toElement 無法與集合中的當(dāng)前元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException 如果 toElement 為 null 并且此集合使用自然排序,或者其比較器不允許 null 元素
IllegalArgumentException 如果這個(gè)集合本身有一個(gè)限制范圍,并且 toElement 位于范圍的范圍之外

tailSet

public SortedSetE tailSet(E fromElement)

從接口復(fù)制的描述:NavigableSet

返回此集合中元素大于或等于 fromElement 的部分的視圖。 返回的集合由該集合支持,因此返回集合中的更改會(huì)反映在該集合中,反之亦然。 返回的集合支持該集合支持的所有可選集合操作。

返回的集合將在嘗試插入超出其范圍的元素時(shí)拋出 IllegalArgumentException。

等價(jià)于tailSet(fromElement, true)。

指定者:

接口 NavigableSetE 中的 tailSet

指定者:

接口 SortedSetE 中的 tailSet

參數(shù):

參數(shù)名稱 參數(shù)描述
fromElement 返回集的低端點(diǎn)(包括)

返回:

此集合中元素大于或等于 fromElement 的部分的視圖

Throws:

Throw名稱 Throw描述
ClassCastException 如果 fromElement 與這個(gè)集合的比較器不兼容(或者,如果集合沒有比較器,如果 fromElement 沒有實(shí)現(xiàn) Comparable)。 如果無法將 fromElement 與當(dāng)前集合中的元素進(jìn)行比較,則實(shí)現(xiàn)可以但不是必須拋出此異常。
NullPointerException 如果 fromElement 為 null 并且此集合使用自然排序,或者其比較器不允許 null 元素
IllegalArgumentException 如果此集合本身具有受限范圍,并且 fromElement 位于范圍的范圍之外

comparator

public Comparator<? super E> comparator()

從接口復(fù)制的描述:SortedSet

返回用于對(duì)該 set 中的元素進(jìn)行排序的比較器,如果此 set 使用其元素的 Comparable,則返回 null。

指定者:

接口 SortedSetE 中的比較器

返回:

用于對(duì)該集合中的元素進(jìn)行排序的比較器,如果此集合使用其元素的自然排序,則為 null

first

public E first()

從接口復(fù)制的描述:SortedSet

返回此集合中當(dāng)前的第一個(gè)(最低)元素。

指定者:

首先在接口 SortedSetE

返回:

當(dāng)前在此集合中的第一個(gè)(最低)元素

Throws:

Throw名稱 Throw描述
NoSuchElementException 如果這個(gè)集合是空的

last

public E last()

從接口復(fù)制的描述:SortedSet

返回此集合中當(dāng)前的最后一個(gè)(最高)元素。

指定者:

最后在接口 SortedSetE

返回:

當(dāng)前在此集合中的最后一個(gè)(最高)元素

Throws:

Throw名稱 Throw描述
NoSuchElementException 如果這個(gè)集合是空的

lower

public E lower(E e)

從接口復(fù)制的描述:NavigableSet

返回此集合中嚴(yán)格小于給定元素的最大元素,如果沒有這樣的元素,則返回 null。

指定者:

接口 NavigableSetE 中的下層

參數(shù):

參數(shù)名稱 參數(shù)描述
e 要匹配的值

返回:

小于 e 的最大元素,如果沒有這樣的元素,則為 null

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

floor

public E floor(E e)

從接口復(fù)制的描述:NavigableSet

返回此集合中小于或等于給定元素的最大元素,如果沒有這樣的元素,則返回 null。

指定者:

接口 NavigableSetE 中的樓層

參數(shù):

參數(shù)名稱 參數(shù)描述
e 要匹配的值

返回:

小于或等于 e 的最大元素,如果沒有這樣的元素,則返回 null

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

ceiling

public E ceiling(E e)

從接口復(fù)制的描述:NavigableSet

返回此集合中大于或等于給定元素的最小元素,如果沒有這樣的元素,則返回 null。

指定者:

接口 NavigableSetE 中的上限

參數(shù):

參數(shù)名稱 參數(shù)描述
e 要匹配的值

返回:

大于或等于 e 的最小元素,如果沒有這樣的元素,則返回 null

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

higher

public E higher(E e)

從接口復(fù)制的描述:NavigableSet

返回此集合中嚴(yán)格大于給定元素的最小元素,如果沒有這樣的元素,則返回 null。

指定者:

更高的接口 NavigableSetE

參數(shù):

參數(shù)名稱 參數(shù)描述
e 要匹配的值

返回:

大于 e 的最小元素,如果沒有這樣的元素,則返回 null

Throws:

Throw名稱 Throw描述
ClassCastException 如果指定元素不能與集合中當(dāng)前的元素進(jìn)行比較
NullPointerException 如果指定元素為空且此集合使用自然排序,或者其比較器不允許空元素

pollFirst

public E pollFirst()

從接口復(fù)制的描述:NavigableSet

檢索并刪除第一個(gè)(最低)元素,如果此集合為空,則返回 null。

指定者:

接口 NavigableSetE 中的 pollFirst

返回:

第一個(gè)元素,如果此集合為空,則返回 null

pollLast

public E pollLast()

從接口復(fù)制的描述:NavigableSet

檢索并刪除最后一個(gè)(最高)元素,如果此集合為空,則返回 null。

指定者:

接口 NavigableSetE 中的 pollLast

返回:

最后一個(gè)元素,如果此集合為空,則返回 null

clone

public Object clone()

返回此 TreeSet 實(shí)例的淺表副本。 (元素本身不會(huì)被克隆。)

覆蓋:

在類 Object 中克隆

返回:

這個(gè)集合的淺拷貝

spliterator

public SpliteratorE spliterator()

在此集合中的元素上創(chuàng)建一個(gè)后期綁定和快速失敗的拆分器。

Spliterator 報(bào)告 Spliterator#SIZED、Spliterator#DISTINCT、Spliterator#SORTED 和 Spliterator#ORDERED。 覆蓋實(shí)現(xiàn)應(yīng)記錄附加特征值的報(bào)告。

如果樹集的比較器為空,則拆分器的比較器為空。 否則,拆分器的比較器與樹集的比較器相同或施加相同的總排序。

指定者:

接口 CollectionE 中的分離器

指定者:

接口 IterableE 中的分離器

指定者:

接口 SetE 中的分離器

指定者:

接口 SortedSetE 中的拆分器

返回:

此集合中元素的拆分器

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)