語言

ConcurrentSkipListMap.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.ConcurrentSkipListMap.putIfAbsent。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於