Поделиться через


IConcurrentMap.PutIfAbsent(Object, Object) Метод

Определение

Если указанный ключ еще не связан со значением, связывает его с заданным значением.

[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

Параметры

key
Object

ключ, с которым необходимо связать указанное значение

value
Object

значение, связанное с указанным ключом

Возвращаемое значение

предыдущее значение, связанное с указанным ключом, или null если для ключа не было сопоставлено. (Возврат null также может указывать, что карта, ранее связанная null с ключом, если реализация поддерживает значения NULL.)

Реализации

Атрибуты

Комментарии

Если указанный ключ еще не связан со значением, связывает его с заданным значением. Это эквивалентно следующему map:

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

за исключением того, что действие выполняется атомарно.

Документация по Java для java.util.concurrent.ConcurrentMap.putIfAbsent(K, V).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к