共用方式為


TreeSet 類別

定義

NavigableSet以為基礎的TreeMap實作。

[Android.Runtime.Register("java/util/TreeSet", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class TreeSet : Java.Util.AbstractSet, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.INavigableSet
[<Android.Runtime.Register("java/util/TreeSet", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type TreeSet = class
    inherit AbstractSet
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
    interface INavigableSet
    interface ISortedSet
    interface ISet
    interface ICollection
    interface IIterable
繼承
屬性
實作

備註

NavigableSet以為基礎的TreeMap實作。 元素會使用其可比較的自然順序來排序,或依據使用哪一個 Comparator 建構函式,在設定建立時間提供。

此實作可為基本作業 (addremovecontains) 提供保證的log(n) 時間成本。

請注意,如果集合要正確實Set作 介面,集合所維護的順序(是否提供明確的比較子),就必須與相等一致。 (如需與相等一致的精確定義,請參閱 ComparableComparatorSet這是因為 介面是以作業來equals定義,但 實例會使用 其 compareTo (或compare) 方法來執行所有元素比較,因此,從 set 的觀點來看,這個方法視為相等的兩個TreeSet元素都是相等的。 即使集合的排序與相等不一致,集合的行為也是妥善定義的;它只是無法遵守介面的Set一般合約。

<強>請注意,此實作不會同步處理。</strong> 如果多個線程同時存取樹狀目錄集,而且至少有一個線程修改集合,則必須在外部同步處理。 這通常是透過同步處理自然封裝集合的某些物件來完成。 如果不存在這類物件,則集合應該使用 Collections#synchronizedSortedSet Collections.synchronizedSortedSet 方法「包裝」。 這最好是在建立時完成,以避免意外對集合進行未同步存取:

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

這個類別的 方法所傳回的 iterator 反覆運算器是 失敗的:如果在建立反覆運算器之後任何時間修改集合,則除了透過反覆運算器自己的 remove 方法以外,反覆運算器會擲回 ConcurrentModificationException。 因此,面對並行修改,反覆運算器會快速且乾淨地失敗,而不是在未來不確定的時間冒著任意、不具決定性的行為的風險。

請注意,Iterator 的失敗快速行為無法保證,一般來說,不可能在未同步處理並行修改的情況下進行任何硬式保證。 快速反覆運算器會盡最大努力擲回 ConcurrentModificationException 。 因此,撰寫依賴此例外狀況的程序正確性是錯誤的: Iterator 的失敗快速行為應該只用來偵測 Bug。

這個類別是 Java Collections Framework 的成員

已在1.2中新增。

java.util.TreeSetJava 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

建構函式

TreeSet()

根據其元素的自然順序來建構新的空白樹狀結構集。

TreeSet(ICollection)

建構新的樹狀結構集,其中包含指定集合中的專案,根據 其專案的自然順序 排序。

TreeSet(IComparator)

根據指定的比較子來建構新的空白樹狀結構集。

TreeSet(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 表示法時使用的建構函式;由運行時間呼叫。

TreeSet(ISortedSet)

建構包含相同元素的新樹狀結構集,並使用與指定排序集相同的順序。

屬性

Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
IsEmpty

要新增

(繼承來源 AbstractCollection)
JniIdentityHashCode

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
JniPeerMembers

NavigableSet以為基礎的TreeMap實作。

PeerReference

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
ThresholdClass

此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。

ThresholdType

此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。

方法

Add(Object)

要新增

(繼承來源 AbstractCollection)
AddAll(ICollection)

要新增

(繼承來源 AbstractCollection)
Ceiling(Object)

已在1中新增。

Clear()

要新增

(繼承來源 AbstractCollection)
Clone()

傳回這個 TreeSet 實例的淺層複本。

Comparator()

傳回用來比較這個 TreeSet中的項目比較子。

Contains(Object)

要新增

(繼承來源 AbstractCollection)
ContainsAll(ICollection)

要新增

(繼承來源 AbstractCollection)
DescendingIterator()

以遞減順序傳回此集合中專案的反覆運算器。

DescendingSet()

傳回這個集合中所含專案的反向順序檢視。

Dispose()

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
Dispose(Boolean)

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
First()

傳回這個集合中的第一個專案。

Floor(Object)

已在1中新增。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
HeadSet(Object, Boolean)

NavigableSet以為基礎的TreeMap實作。

HeadSet(Object)

NavigableSet以為基礎的TreeMap實作。

Higher(Object)

已在1中新增。

Iterator()

以遞增順序傳回這個集合中專案的反覆運算器。

JavaFinalize()

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
Last()

傳回這個集合中的最後一個專案。

Lower(Object)

已在1中新增。

Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
PollFirst()

已在1中新增。

PollLast()

已在1中新增。

Remove(Object)

要新增

(繼承來源 AbstractCollection)
RemoveAll(ICollection)

要新增

(繼承來源 AbstractCollection)
RetainAll(ICollection)

要新增

(繼承來源 AbstractCollection)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
Size()

傳回這個集合中的項目數(其基數)。

Spliterator()

建立 <em>“Spliterator。

SubSet(Object, Boolean, Object, Boolean)

NavigableSet以為基礎的TreeMap實作。

SubSet(Object, Object)

NavigableSet以為基礎的TreeMap實作。

TailSet(Object, Boolean)

NavigableSet以為基礎的TreeMap實作。

TailSet(Object)

NavigableSet以為基礎的TreeMap實作。

ToArray()

要新增

(繼承來源 AbstractCollection)
ToArray(Object[])

要新增

(繼承來源 AbstractCollection)
ToArray<T>()

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
Wait()

讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<>

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

IJavaPeerable.Disposed()

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
IJavaPeerable.Finalized()

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

NavigableSet以為基礎的TreeMap實作。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

NavigableSet以為基礎的TreeMap實作。

GetJniTypeName(IJavaPeerable)

NavigableSet以為基礎的TreeMap實作。

ToEnumerable(IIterable)

NavigableSet以為基礎的TreeMap實作。

ToEnumerable<T>(IIterable)

NavigableSet以為基礎的TreeMap實作。

適用於