IMap.ComputeIfAbsent(Object, IFunction) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Si la clé spécifiée n’est pas déjà associée à une valeur (ou à nulllaquelle elle est mappée), 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:Java.Util.IMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", 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:Java.Util.IMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", 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 de mappage 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
- Attributs
Remarques
Si la clé spécifiée n’est pas déjà associée à une valeur (ou à nulllaquelle elle est mappée), tente de calculer sa valeur à l’aide de la fonction de mappage donnée et l’entre dans cette carte, sauf si null.
Si la fonction de mappage retourne null, aucun mappage n’est enregistré. Si la fonction de mappage elle-même lève une exception (décochée), l’exception est réexécutée et aucun mappage n’est enregistré. L’utilisation la plus courante consiste à construire un nouvel objet servant de valeur mappée initiale ou de résultat mémorisé, comme dans :
{@code
map.computeIfAbsent(key, k -> new Value(f(k)));
}
Ou pour implémenter un mappage à valeurs multiples, Map<K,Collection<V>>prenant en charge plusieurs valeurs par clé :
{@code
map.computeIfAbsent(key, k -> new HashSet<V>()).add(v);
}
La fonction de mappage ne doit pas modifier cette carte pendant le calcul.
Ajouté dans la version 1.8.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.