Langue

ConcurrentHashMap.ComputeIfAbsent(Object, IFunction) Méthode

Définition

Si la clé spécifiée n’est pas déjà associée à une valeur, tente de calculer sa valeur à l’aide de la fonction de mappage donnée et l’entre dans cette carte, sauf si 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

Paramètres

key
Object

clé avec laquelle la valeur spécifiée doit être associée

mappingFunction
IFunction

fonction pour calculer une valeur

Retours

valeur actuelle (existante ou calculée) associée à la clé spécifiée, ou null si la valeur calculée est Null

Implémente

Attributs

Remarques

Si la clé spécifiée n’est pas déjà associée à une valeur, tente de calculer sa valeur à l’aide de la fonction de mappage donnée et l’entre dans cette carte, sauf si null. L’appel de méthode entier est effectué atomiquement. La fonction fournie est appelée exactement une fois par appel de cette méthode si la clé est absente, sinon pas du tout. Certaines tentatives d’opérations de mise à jour sur cette carte par d’autres threads peuvent être bloquées pendant que le calcul est en cours, de sorte que le calcul doit être court et simple.

La fonction de mappage ne doit pas modifier cette carte pendant le calcul.

Documentation Java pour java.util.concurrent.ConcurrentHashMap.computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à