Freigeben über


IMap.Compute(Object, IBiFunction) Methode

Definition

Versucht, eine Zuordnung für den angegebenen Schlüssel und den aktuellen zugeordneten Wert (oder null wenn keine aktuelle Zuordnung vorhanden ist) zu berechnen.

[Android.Runtime.Register("compute", "(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetCompute_Ljava_lang_Object_Ljava_util_function_BiFunction_Handler:Java.Util.IMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)]
public virtual Java.Lang.Object? Compute (Java.Lang.Object? key, Java.Util.Functions.IBiFunction remappingFunction);
[<Android.Runtime.Register("compute", "(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetCompute_Ljava_lang_Object_Ljava_util_function_BiFunction_Handler:Java.Util.IMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)>]
abstract member Compute : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
override this.Compute : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object

Parameter

key
Object

Schlüssel, dem der angegebene Wert zugeordnet werden soll

remappingFunction
IBiFunction

die Neuzuordnungsfunktion zum Berechnen eines Werts

Gibt zurück

der neue Wert, der dem angegebenen Schlüssel zugeordnet ist, oder null, wenn keines vorhanden ist.

Attribute

Hinweise

Versucht, eine Zuordnung für den angegebenen Schlüssel und den aktuellen zugeordneten Wert (oder null wenn keine aktuelle Zuordnung vorhanden ist) zu berechnen. Wenn Sie z. B. entweder ein String Msg-Objekt erstellen oder an eine Wertzuordnung anfügen möchten, gehen Sie folgendermaßen vor:

{@code
            map.compute(key, (k, v) -> (v == null) ? msg : v.concat(msg))}

(Die Methode #merge merge() ist häufig einfacher zu verwenden für solche Zwecke.)

Wenn die Neuzuordnungsfunktion zurückgegeben nullwird, wird die Zuordnung entfernt (oder bleibt bei anfänglicher Abwesenheit nicht vorhanden). Wenn die Neuzuordnungsfunktion selbst eine (deaktivierte) Ausnahme auslöst, wird die Ausnahme erneut ausgelöst, und die aktuelle Zuordnung bleibt unverändert.

Die Neuzuordnungsfunktion sollte diese Zuordnung während der Berechnung nicht ändern.

Hinzugefügt in 1.8.

Java-Dokumentation für java.util.Map.compute(K, java.util.function.BiFunction<? super K, ? super V, ? 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: