IConcurrentMap.IMap.Compute(Object, IBiFunction) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
嘗試計算指定鍵及其當前映射值的映射(若無當前映射則為空值)。
[Android.Runtime.Register("compute", "(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetCompute_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.Compute(Java.Lang.Object? key, Java.Util.Functions.IBiFunction? remappingFunction);
[<Android.Runtime.Register("compute", "(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetCompute_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.Compute : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
override this.Java.Util.IMap.Compute : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
參數
- key
- Object
指定值要與之關聯的鍵
- remappingFunction
- IBiFunction
重新映射函數用來計算一個值
傳回
與指定鍵相關聯的新值,若無則為空值
實作
- 屬性
備註
嘗試計算指定鍵及其當前映射值的映射(若無當前映射則為空值)。
新增於1.8版本。
例如,要建立或附加字串訊息到值映射:
map.compute(key, (k, v) -> (v == null) ? msg : v.concat(msg))
(合併方法(Method merge()通常較簡單。)
若重映射函數回傳為空,則該映射將被移除(若初始缺失則保持缺席)。
如果重映射函式本身拋出(未勾選的)例外,該例外會被重新拋出,且目前的映射不變。
重新映射函數在計算過程中不應修改此映射。
Java 參考 java.util.concurrent.ConcurrentMap.compute。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。