LongSparseArray Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Die Zuordnung von SparseArray zu Objekten ist lang.
[Android.Runtime.Register("android/util/LongSparseArray", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class LongSparseArray : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.ICloneable
[<Android.Runtime.Register("android/util/LongSparseArray", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type LongSparseArray = class
inherit Object
interface ICloneable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Vererbung
- Attribute
- Implementiert
Hinweise
Die Zuordnung von SparseArray zu Objekten ist lang. Im Gegensatz zu einem normalen Array von Objekten kann es Lücken in den Indizes geben. Es soll arbeitsspeichereffizienter sein als die Verwendung einer HashMap zum Zuordnen von Longs zu Objekten, da die Automatische Boxung von Schlüsseln vermieden wird und die Datenstruktur nicht von einem zusätzlichen Eintragsobjekt für jede Zuordnung abhängig ist.
Beachten Sie, dass dieser Container seine Zuordnungen in einer Arraydatenstruktur behält, wobei eine binäre Suche zum Suchen von Schlüsseln verwendet wird. Die Implementierung soll nicht für Datenstrukturen geeignet sein, die möglicherweise eine große Anzahl von Elementen enthalten. Es ist im Allgemeinen langsamer als eine herkömmliche HashMap, da Nachschlagevorgänge eine binäre Suche erfordern und Add- und Removes das Einfügen und Löschen von Einträgen im Array erfordern. Bei Containern, die bis zu Hunderten von Elementen enthalten, ist der Leistungsunterschied mit weniger als 50 % nicht signifikant.
Um die Leistung zu verbessern, enthält der Container eine Optimierung beim Entfernen von Schlüsseln: Anstatt sein Array sofort zu komprimieren, lässt er den entfernten Eintrag als gelöscht markiert. Der Eintrag kann dann für denselben Schlüssel erneut verwendet oder später in einem einzelnen Garbage Collection-Schritt aller entfernten Einträge komprimiert werden. Diese Garbage Collection muss jederzeit ausgeführt werden, wenn das Array vergrößert werden muss oder die Kartengröße oder die Eintragswerte abgerufen werden.
Es ist möglich, die Elemente in diesem Container mit #keyAt(int)
und #valueAt(int)
zu durchlaufen. Beim Durchlaufen der Schlüssel mit keyAt(int)
aufsteigenden Werten des Indexes werden die Schlüssel in aufsteigender Reihenfolge oder die Werte zurückgegeben, die den Schlüsseln in aufsteigender Reihenfolge entsprechen.valueAt(int)
Java-Dokumentation für android.util.LongSparseArray
.
Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
LongSparseArray() |
Erstellt ein neues LongSparseArray ohne Zuordnungen. |
LongSparseArray(Int32) |
Erstellt ein neues LongSparseArray ohne Zuordnungen, für die keine zusätzliche Speicherzuordnung erforderlich ist, um die angegebene Anzahl von Zuordnungen zu speichern. |
LongSparseArray(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Runtime aufgerufen. |
Eigenschaften
Class |
Gibt die Laufzeitklasse dieses |
Handle |
Das Handle zum zugrunde liegenden Android-instance. (Geerbt von Object) |
JniIdentityHashCode |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
JniPeerMembers |
Die Zuordnung von SparseArray zu Objekten ist lang. |
PeerReference |
Die Zuordnung von SparseArray zu Objekten ist lang. (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
Append(Int64, Object) |
Fügt ein Schlüssel-Wert-Paar in das Array ein, das für den Fall optimiert wird, in dem der Schlüssel größer als alle vorhandenen Schlüssel im Array ist. |
Clear() |
Entfernt alle Schlüssel-Wert-Zuordnungen aus diesem LongSparseArray. |
Clone() |
Erstellt und gibt eine Kopie dieses |
Delete(Int64) |
Entfernt die Zuordnung aus dem angegebenen Schlüssel, falls vorhanden. |
Dispose() |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
Dispose(Boolean) |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
Equals(Object) |
Gibt an, ob ein anderes Objekt diesem "gleich" ist. (Geerbt von Object) |
Get(Int64) |
Ruft das Objekt ab, das aus dem angegebenen Schlüssel zugeordnet ist, oder |
Get(Int64, Object) |
Ruft das Objekt ab, das vom angegebenen Schlüssel zugeordnet wurde, oder das angegebene Objekt, wenn keine solche Zuordnung vorgenommen wurde. |
GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
IndexOfKey(Int64) |
Gibt den Index zurück, für den |
IndexOfValue(Object) |
Gibt einen Index zurück, für den |
JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection feststellt, dass keine Verweise mehr auf das Objekt vorhanden sind. (Geerbt von Object) |
KeyAt(Int32) |
Gibt einen Index im Bereich |
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) |
Put(Int64, Object) |
Fügt dem angegebenen Wert eine Zuordnung aus dem angegebenen Schlüssel hinzu, wobei die vorherige Zuordnung aus dem angegebenen Schlüssel ersetzt wird, falls vorhanden. |
Remove(Int64) |
Alias für |
RemoveAt(Int32) |
Entfernt die Zuordnung am angegebenen Index. |
SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
SetValueAt(Int32, Object) |
Legt bei einem Index im Bereich |
Size() |
Gibt die Anzahl der Schlüssel-Wert-Zuordnungen zurück, die dieses LongSparseArray derzeit speichert. |
ToArray<T>() |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
UnregisterFromRuntime() |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
ValueAt(Int32) |
Gibt einen Index im Bereich zurück |
Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel durch em benachrichtigen/em> oder <em>interrupted</em>.<>< (Geerbt von Object) |
Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel, indem <er>benachrichtigt</em> oder <em>interrupted</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel, indem <er>benachrichtigt</em> oder <em>interrupted</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
IJavaPeerable.Disposed() |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
IJavaPeerable.Finalized() |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
IJavaPeerable.JniManagedPeerState |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Die Zuordnung von SparseArray zu Objekten ist lang. (Geerbt von Object) |
Erweiterungsmethoden
JavaCast<TResult>(IJavaObject) |
Führt eine Für Android-Runtime überprüfte Typkonvertierung aus. |
JavaCast<TResult>(IJavaObject) |
Die Zuordnung von SparseArray zu Objekten ist lang. |
GetJniTypeName(IJavaPeerable) |
Die Zuordnung von SparseArray zu Objekten ist lang. |