Compartir a través de


IConcurrentMap.PutIfAbsent(Object, Object) Método

Definición

Si la clave especificada aún no está asociada a un valor, la asocia al valor especificado.

[Android.Runtime.Register("putIfAbsent", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;", "GetPutIfAbsent_Ljava_lang_Object_Ljava_lang_Object_Handler:Java.Util.Concurrent.IConcurrentMapInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Lang.Object? PutIfAbsent (Java.Lang.Object? key, Java.Lang.Object? value);
[<Android.Runtime.Register("putIfAbsent", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;", "GetPutIfAbsent_Ljava_lang_Object_Ljava_lang_Object_Handler:Java.Util.Concurrent.IConcurrentMapInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PutIfAbsent : Java.Lang.Object * Java.Lang.Object -> Java.Lang.Object

Parámetros

key
Object

clave con la que se va a asociar el valor especificado

value
Object

valor que se va a asociar a la clave especificada

Devoluciones

el valor anterior asociado a la clave especificada o null si no había ninguna asignación para la clave. (Una null devolución también puede indicar que el mapa asociado previamente a null la clave, si la implementación admite valores NULL).

Implementaciones

Atributos

Comentarios

Si la clave especificada aún no está asociada a un valor, la asocia al valor especificado. Esto equivale a, para este map:

{@code
            if (!map.containsKey(key))
              return map.put(key, value);
            else
              return map.get(key);}

excepto que la acción se realiza de forma atómica.

Documentación de Java para java.util.concurrent.ConcurrentMap.putIfAbsent(K, V).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a