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接口时必须与相等一致。 (请参阅ComparableComparator了解与相等的精确定义。这是因为Set接口在操作方面equals进行了定义,但实例使用其 compareTo (或compare) 方法执行所有元素比较,因此此方法认为相等的两个TreeSet元素从集的角度相等。 即使集的排序与相等不一致,集的行为也定义良好;它只是不服从接口的Set一般协定。

<强>请注意,此实现未同步。</strong> 如果多个线程同时访问树集,并且至少一个线程修改集, 则必须 在外部同步它。 这通常是通过在自然封装集的某些对象上进行同步来实现的。 如果不存在此类对象,则应使用 Collections#synchronizedSortedSet Collections.synchronizedSortedSet 该方法“包装”集。 最好在创建时执行此操作,以防止意外的未同步访问集:

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

此类方法返回的iterator迭代器是快速的:如果在创建迭代器后随时修改集,则迭代器将引发一个ConcurrentModificationException迭代器remove。 因此,面对并发修改,迭代器会在将来不确定的时间快速、干净地失败,而不是冒着任意的不确定行为的风险。

请注意,迭代器的故障快速行为无法保证,一般来说,在出现非同步并发修改时,无法做出任何硬保证。 故障快速迭代器会尽力引发 ConcurrentModificationException 。 因此,编写依赖于此异常的程序的正确性是错误的: 迭代器的故障快速行为应仅用于检测 bug。

此类是 Java 集合框架的成员

已在 1.2 中添加。

适用于 . 的 java.util.TreeSetJava 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

构造函数

TreeSet()

构造一个新的空树集,根据其元素的自然顺序进行排序。

TreeSet(ICollection)

构造一个新树集,其中包含指定集合中的元素,根据 元素的自然顺序 进行排序。

TreeSet(IComparator)

构造一个新的空树集,根据指定的比较器进行排序。

TreeSet(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

TreeSet(ISortedSet)

构造包含相同元素的新树集,并使用与指定的排序集相同的排序。

属性

Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
IsEmpty

要添加

(继承自 AbstractCollection)
JniIdentityHashCode

NavigableSet基于 .. 的TreeMap实现

(继承自 Object)
JniPeerMembers

NavigableSet基于 .. 的TreeMap实现

PeerReference

NavigableSet基于 .. 的TreeMap实现

(继承自 Object)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

方法

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)

NavigableSet基于 .. 的TreeMap实现

HeadSet(Object, Boolean)

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)

NavigableSet基于 .. 的TreeMap实现

TailSet(Object, Boolean)

NavigableSet基于 .. 的TreeMap实现

ToArray()

要添加

(继承自 AbstractCollection)
ToArray(Object[])

要添加

(继承自 AbstractCollection)
ToArray<T>()

NavigableSet基于 .. 的TreeMap实现

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

NavigableSet基于 .. 的TreeMap实现

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em> 或 <em>interrupted</em>。<><

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</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实现

适用于