Sprache

ConcurrentHashMap.ComputeIfAbsent(Object, IFunction) Methode

Definition

Wenn der angegebene Schlüssel noch nicht einem Wert zugeordnet ist, versucht, seinen Wert mithilfe der angegebenen Zuordnungsfunktion zu berechnen und es in diese Karte einzugeben, es sei denn null.

[Android.Runtime.Register("computeIfAbsent", "(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;", "GetComputeIfAbsent_Ljava_lang_Object_Ljava_util_function_Function_Handler", ApiSince=24)]
public virtual Java.Lang.Object? ComputeIfAbsent(Java.Lang.Object key, Java.Util.Functions.IFunction mappingFunction);
[<Android.Runtime.Register("computeIfAbsent", "(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;", "GetComputeIfAbsent_Ljava_lang_Object_Ljava_util_function_Function_Handler", ApiSince=24)>]
abstract member ComputeIfAbsent : Java.Lang.Object * Java.Util.Functions.IFunction -> Java.Lang.Object
override this.ComputeIfAbsent : Java.Lang.Object * Java.Util.Functions.IFunction -> Java.Lang.Object

Parameter

key
Object

Schlüssel, dem der angegebene Wert zugeordnet werden soll

mappingFunction
IFunction

die Funktion zum Berechnen eines Werts

Gibt zurück

der aktuelle (vorhandene oder berechnete) Wert, der dem angegebenen Schlüssel zugeordnet ist, oder null, wenn der berechnete Wert null ist.

Implementiert

Attribute

Hinweise

Wenn der angegebene Schlüssel noch nicht einem Wert zugeordnet ist, versucht, seinen Wert mithilfe der angegebenen Zuordnungsfunktion zu berechnen und es in diese Karte einzugeben, es sei denn null. Der gesamte Aufruf der Methode erfolgt atomisch. Die angegebene Funktion wird genau einmal pro Aufruf dieser Methode aufgerufen, wenn der Schlüssel nicht vorhanden ist, sonst überhaupt nicht. Einige versuchten Aktualisierungsvorgänge auf dieser Karte durch andere Threads werden möglicherweise blockiert, während die Berechnung ausgeführt wird, sodass die Berechnung kurz und einfach sein sollte.

Die Zuordnungsfunktion darf diese Zuordnung während der Berechnung nicht ändern.

Java-Dokumentation für java.util.concurrent.ConcurrentHashMap.computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>).

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.

Gilt für: