語言

IConcurrentMap.IMap.Merge(Object, Object, IBiFunction) 方法

定義

如果指定的鍵尚未與某值相關聯或與空值相關聯,則會將其與給定的非空值關聯。

[Android.Runtime.Register("merge", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetMerge_Ljava_lang_Object_Ljava_lang_Object_Ljava_util_function_BiFunction_Handler:Java.Util.Concurrent.IConcurrentMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)]
override sealed Java.Lang.Object? IMap.Merge(Java.Lang.Object? key, Java.Lang.Object? value, Java.Util.Functions.IBiFunction? remappingFunction);
[<Android.Runtime.Register("merge", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetMerge_Ljava_lang_Object_Ljava_lang_Object_Ljava_util_function_BiFunction_Handler:Java.Util.Concurrent.IConcurrentMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)>]
abstract member Java.Util.IMap.Merge : Java.Lang.Object * Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
override this.Java.Util.IMap.Merge : Java.Lang.Object * Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object

參數

key
Object

將所得值與鍵鍵關聯

value
Object

非空值將與現有與鍵相關聯的值合併;若鍵中無現有值或空值,則與鍵相關聯

remappingFunction
IBiFunction

如果存在,則重新映射函數以重新計算值

傳回

與指定鍵相關聯的新值,若鍵沒有相關值則為空值

實作

屬性

備註

如果指定的鍵尚未與某值相關聯或與空值相關聯,則會將其與給定的非空值關聯。 否則,會以給定的重映射函數結果替換相關值,若結果為零則移除。 此方法在將多個映射值合併為一個鍵時可能有用。

新增於1.8版本。

例如,要建立或附加字串訊息到值映射:

map.merge(key, msg, String::concat)

若重映射函式回傳 null,則該映射會被移除。

如果重映射函式本身拋出(未勾選的)例外,該例外會被重新拋出,且目前的映射不變。

重新映射函數在計算過程中不應修改此映射。

Java 參考 java.util.concurrent.ConcurrentMap.merge。

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

適用於