語言

ConcurrentHashMap.PutIfAbsent(Object, Object) 方法

定義

如果指定的鍵尚未與某值相關聯,則將其與該值關聯。

[Android.Runtime.Register("putIfAbsent", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;", "GetPutIfAbsent_Ljava_lang_Object_Ljava_lang_Object_Handler")]
public virtual 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")>]
abstract member PutIfAbsent : Java.Lang.Object * Java.Lang.Object -> Java.Lang.Object
override this.PutIfAbsent : Java.Lang.Object * Java.Lang.Object -> Java.Lang.Object

參數

key
Object

指定值要與之關聯的鍵

value
Object

值將與指定的鍵相關聯

傳回

先前與指定鍵相關聯的值,或 null 是該鍵沒有映射

實作

屬性

備註

如果指定的鍵尚未與某值相關聯,則將其與該值關聯。

這相當於,對於這張地圖:

if (!map.containsKey(key))
  return map.put(key, value);
else
  return map.get(key);

但這個動作是以原子方式執行的。

Java 參考 java.util.concurrent.ConcurrentHashMap.putIfAbsent。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於