Поделиться через


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 упорядочения или предоставленным во время создания набора в зависимости от того, какой конструктор используется.

Эта реализация обеспечивает гарантированную стоимость времени log(n) для основных операций (addremoveиcontains).

Обратите внимание, что порядок, поддерживаемый набором (предоставляется ли явный компратор) должен быть согласован с равными, если это необходимо для правильной Set реализации интерфейса. (См Comparable . или Comparator точное определение, согласованное с равными.) Это связано с тем, что Set интерфейс определен с точки зрения equals операции, но TreeSet экземпляр выполняет все сравнения элементов с помощью его compareTo метода (или compare), поэтому два элемента, которые считаются равными этим методом, с точки зрения набора, равны. Поведение набора четко определяется , даже если его упорядочение не соответствует равным. Он просто не соответствует общему контракту Set интерфейса.

<Обратите>внимание, что эта реализация не синхронизирована.</strong> , если несколько потоков обращаются к древовидному набору одновременно, а по крайней мере один из потоков изменяет набор, он должен быть синхронизирован внешне. Обычно это достигается путем синхронизации с некоторым объектом, который естественно инкапсулирует набор. Если такой объект не существует, набор должен быть "упакован" с помощью Collections#synchronizedSortedSet Collections.synchronizedSortedSet метода. Это лучше всего сделать во время создания, чтобы предотвратить случайный несинхронизированный доступ к набору:

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

Итераторы, возвращаемые методом этого классаiterator, завершаются сбоем: если набор изменяется в любое время после создания итератора, за исключением собственного remove метода итератора, итератор вызовет ConcurrentModificationExceptionисключение. Таким образом, перед лицом параллельного изменения итератор завершается сбоем быстро и чисто, а не рискуя произвольным, недетерминированным поведением в будущем.

Обратите внимание, что поведение итератора не может быть гарантировано, как правило, невозможно сделать какие-либо жесткие гарантии в присутствии несинхронизированных одновременных изменений. Отработки отказа быстрой итерации создаются ConcurrentModificationException на основе лучших усилий. Поэтому было бы неправильно написать программу, которая зависит от этого исключения для его правильности: поведение итераторов должно использоваться только для обнаружения ошибок.

Этот класс является членом Платформы коллекций Java.

Добавлено в версии 1.2.

Документация по Java для java.util.TreeSet.

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Конструкторы

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 для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для 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>.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>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основе .

Применяется к