ConcurrentHashMap.ComputeIfPresent(Object, IBiFunction) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Если значение указанного ключа присутствует, пытается вычислить новое сопоставление с заданным ключом и его текущим сопоставленным значением.
[Android.Runtime.Register("computeIfPresent", "(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetComputeIfPresent_Ljava_lang_Object_Ljava_util_function_BiFunction_Handler", ApiSince=24)]
public virtual Java.Lang.Object? ComputeIfPresent(Java.Lang.Object key, Java.Util.Functions.IBiFunction remappingFunction);
[<Android.Runtime.Register("computeIfPresent", "(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;", "GetComputeIfPresent_Ljava_lang_Object_Ljava_util_function_BiFunction_Handler", ApiSince=24)>]
abstract member ComputeIfPresent : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
override this.ComputeIfPresent : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
Параметры
- key
- Object
ключ, с которым может быть связано значение
- remappingFunction
- IBiFunction
Функция для вычисления значения
Возвращаемое значение
новое значение, связанное с указанным ключом, или null, если нет
Реализации
- Атрибуты
Комментарии
Если значение указанного ключа присутствует, пытается вычислить новое сопоставление с заданным ключом и его текущим сопоставленным значением. Вызов всего метода выполняется атомарно. Указанная функция вызывается ровно один раз для каждого вызова этого метода, если ключ присутствует, а не вообще. Некоторые попытки выполнить операции обновления на этой карте другими потоками могут быть заблокированы во время выполнения вычислений, поэтому вычисления должны быть короткими и простыми.
Функция переназначивания не должна изменять эту карту во время вычислений.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.