IConcurrentMap.IMap.Compute(Object, IBiFunction) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Пытается вычислить сопоставление для указанного ключа и его текущего сопоставленного значения (или null, если текущее сопоставление отсутствует).
[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
переназначаемая функция для вычисления значения
Возвращаемое значение
новое значение, связанное с указанным ключом, или null, если нет
Реализации
- Атрибуты
Комментарии
Пытается вычислить сопоставление для указанного ключа и его текущего сопоставленного значения (или null, если текущее сопоставление отсутствует).
Добавлено в версии 1.8.
Например, чтобы создать или добавить msg строки в сопоставление значений:
map.compute(key, (k, v) -> (v == null) ? msg : v.concat(msg))
(Слияние методов часто проще использовать для таких целей.)
Если функция повторного сопоставления возвращает значение NULL, сопоставление удаляется (или остается отсутствующим при первоначальном отсутствии).
Если функция переназначивания вызывает исключение (снято), исключение повторно выполняется, а текущее сопоставление остается неизменным.
Функция повторного сопоставления не должна изменять эту карту во время вычислений.
Java справочные материалы.java.util.concurrent.ConcurrentMap.compute
Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".