Freigeben über


TreeMap Klasse

Definition

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

[Android.Runtime.Register("java/util/TreeMap", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public class TreeMap : Java.Util.AbstractMap, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.INavigableMap
[<Android.Runtime.Register("java/util/TreeMap", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type TreeMap = class
    inherit AbstractMap
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
    interface INavigableMap
    interface ISortedMap
    interface IMap
Vererbung
Attribute
Implementiert

Hinweise

Eine auf Rot-Schwarz basierende NavigableMap Implementierung. Die Karte wird je nach verwendetem Konstruktor nach der vergleichbaren natürlichen Reihenfolge ihrer Schlüssel oder nach einer Comparator bei der Kartenerstellung bereitgestellten Zuordnung sortiert.

Diese Implementierung bietet garantierte Protokoll-(n)Zeitkosten für die containsKey, getund removeput Vorgänge. Algorithmen sind Anpassungen derjenigen in Cormen, Leiserson und Rivests <em>Einführung in Algorithmen</em>.

Beachten Sie, dass die Sortierung, die von einer Strukturkarte verwaltet wird, wie jede sortierte Karte, und ob ein expliziter Vergleich bereitgestellt wird, mit>/em> konsistent equals<sein <muss, wenn diese sortierte Karte die Map Schnittstelle korrekt implementiert. (Siehe Comparable oder Comparator eine genaue Definition von <em>, die mit gleich</em> konsistent ist.) Dies liegt daran, dass die Map Schnittstelle in Bezug auf den equals Vorgang definiert ist, aber eine sortierte Zuordnung führt alle Schlüsselvergleiche mithilfe ihrer compareTo (oder compare) Methode aus, sodass zwei Schlüssel, die von dieser Methode als gleich eingestuft werden, aus der Sicht der sortierten Zuordnung gleich sind. Das Verhalten einer sortierten Karte <em>ist</em> gut definiert, auch wenn die Sortierung inkonsistent equalsist; sie unterliegt nur dem allgemeinen Vertrag der Map Schnittstelle.

<strong>Note that this implementation is not synchronized.</strong> Wenn mehrere Threads gleichzeitig auf eine Karte zugreifen und mindestens einer der Threads die Zuordnung strukturell ändert, <muss< em>/em> extern synchronisiert werden. (Eine strukturelle Änderung ist jeder Vorgang, der eine oder mehrere Zuordnungen hinzufügt oder löscht; lediglich das Ändern des werts, der einem vorhandenen Schlüssel zugeordnet ist, ist keine strukturelle Änderung.) Dies wird in der Regel durch Synchronisieren eines Objekts erreicht, das die Karte natürlich kapselt. Wenn kein solches Objekt vorhanden ist, sollte die Zuordnung mit der Collections#synchronizedSortedMap Collections.synchronizedSortedMap Methode "umbrochen" werden. Dies geschieht am besten zur Erstellungszeit, um versehentlichen nicht synchronisierten Zugriff auf die Karte zu verhindern:

SortedMap m = Collections.synchronizedSortedMap(new TreeMap(...));

Die iteratoren, die von der Methode der Auflistungen zurückgegeben werden, die von allen "Sammlungsansichtsmethoden" dieser Klasse zurückgegeben werden, sind>< fail-fast</em>: Wenn die Karte nach dem iterator Erstellen des Iterators strukturell geändert wird, außer über die eigene remove Methode des Iterators, löst der Iterator eine .ConcurrentModificationException Daher schlägt der Iterator angesichts der gleichzeitigen Änderung schnell und sauber fehl, anstatt willkürliches, nicht deterministisches Verhalten zu einem unbestimmten Zeitpunkt in der Zukunft zu riskieren.

Beachten Sie, dass das fehlschnelle Verhalten eines Iterators nicht garantiert werden kann, da es im Allgemeinen unmöglich ist, im Vorhandensein einer nicht synchronisierten gleichzeitigen Änderung hart garantiert zu werden. Fail-fast iterators throw ConcurrentModificationException on a best-effort. Daher wäre es falsch, ein Programm zu schreiben, das von dieser Ausnahme für seine Richtigkeit abhängig ist: <em>das fehlerschnelle Verhalten von Iteratoren sollte nur verwendet werden, um Fehler zu erkennen.</Em>

Alle Map.Entry von Methoden in dieser Klasse zurückgegebenen Paare und ihre Ansichten stellen Momentaufnahmen von Zuordnungen zum Zeitpunkt der Erstellung dar. Sie unterstützen <die Entry.setValue Methode stark>nicht</stark>. (Beachten Sie jedoch, dass es möglich ist, Zuordnungen in der zugeordneten Karte mithilfe von put.)

Diese Klasse ist ein Mitglied des Java Collections Framework.

In 1.2 hinzugefügt.

Java-Dokumentation für java.util.TreeMap.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

TreeMap()

Erstellt eine neue, leere Strukturkarte mit der natürlichen Reihenfolge ihrer Schlüssel.

TreeMap(IComparator)

Erstellt eine neue, leere Baumkarte, sortiert nach der angegebenen Vergleichstabelle.

TreeMap(IDictionary)

Erstellt eine neue Strukturkarte, die die gleichen Zuordnungen wie die angegebene Karte enthält, sortiert nach der <natürlichen>Reihenfolge</Em> ihrer Schlüssel.

TreeMap(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

Eigenschaften

Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
IsEmpty

So wird's hinzugefügt

(Geerbt von AbstractMap)
JniIdentityHashCode

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
JniPeerMembers

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

PeerReference

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Methoden

CeilingEntry(Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

CeilingKey(Object)

Hinzugefügt in 1.

Clear()

So wird's hinzugefügt

(Geerbt von AbstractMap)
Clone()

Gibt eine flache Kopie dieser TreeMap Instanz zurück.

Comparator()

Gibt den Vergleichsator zurück, der zum Vergleichen von Schlüsseln in dieser sortierten Karte oder null verwendet wird, wenn die natürliche Sortierung verwendet wird.

ContainsKey(Object)

So wird's hinzugefügt

(Geerbt von AbstractMap)
ContainsValue(Object)

So wird's hinzugefügt

(Geerbt von AbstractMap)
DescendingKeySet()

Hinzugefügt in 1.

DescendingMap()

Hinzugefügt in 1.

Dispose()

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
Dispose(Boolean)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
EntrySet()

Gibt eine Set Ansicht der In dieser Karte enthaltenen Zuordnungen zurück.

Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
FirstEntry()

Gibt eine Schlüsselwertzuordnung zurück, die dem geringsten Schlüssel in dieser Karte zugeordnet ist oder null wenn die Karte leer ist.

FirstKey()

Gibt den geringsten Schlüssel in dieser sortierten Zuordnung zurück.

FloorEntry(Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

FloorKey(Object)

Hinzugefügt in 1.

ForEach(IBiConsumer)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

Get(Object)

So wird's hinzugefügt

(Geerbt von AbstractMap)
GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
HeadMap(Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

HeadMap(Object, Boolean)

Hinzugefügt in 1.

HigherEntry(Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

HigherKey(Object)

Hinzugefügt in 1.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
KeySet()

So wird's hinzugefügt

(Geerbt von AbstractMap)
LastEntry()

Gibt eine Schlüsselwertzuordnung zurück, die dem größten Schlüssel in dieser Karte zugeordnet ist oder null wenn die Karte leer ist.

LastKey()

Gibt den größten Schlüssel in dieser sortierten Karte zurück.

LowerEntry(Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

LowerKey(Object)

Hinzugefügt in 1.

NavigableKeySet()

Hinzugefügt in 1.

Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
PollFirstEntry()

Entfernt und gibt eine Schlüsselwertzuordnung zurück, die dem geringsten Schlüssel in dieser Karte zugeordnet ist, oder null wenn die Karte leer ist.

PollLastEntry()

Entfernt und gibt eine Schlüsselwertzuordnung zurück, die dem größten Schlüssel in dieser Karte zugeordnet ist, oder null wenn die Karte leer ist.

Put(Object, Object)

So wird's hinzugefügt

(Geerbt von AbstractMap)
PutAll(IDictionary)

So wird's hinzugefügt

(Geerbt von AbstractMap)
Remove(Object)

So wird's hinzugefügt

(Geerbt von AbstractMap)
Replace(Object, Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

Replace(Object, Object, Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

ReplaceAll(IBiFunction)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
Size()

So wird's hinzugefügt

(Geerbt von AbstractMap)
SubMap(Object, Boolean, Object, Boolean)

Hinzugefügt in 1.

SubMap(Object, Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

TailMap(Object)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

TailMap(Object, Boolean)

Hinzugefügt in 1.

ToArray<T>()

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
Values()

So wird's hinzugefügt

(Geerbt von AbstractMap)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em> oder <em>unterbrochen</em>.<><

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

IJavaPeerable.Disposed()

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
IJavaPeerable.Finalized()

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

GetJniTypeName(IJavaPeerable)

Eine auf Rot-Schwarz basierende NavigableMap Implementierung.

Gilt für: