Idioma

IConcurrentMap.IMap.Compute(Object, IBiFunction) Método

Definição

Tenta calcular um mapeamento para a chave especificada e seu valor mapeado atual (ou nulo se não houver nenhum mapeamento atual).

[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

Parâmetros

key
Object

chave com a qual o valor especificado deve ser associado

remappingFunction
IBiFunction

a função de remapeamento para calcular um valor

Retornos

o novo valor associado à chave especificada ou nulo se nenhum

Implementações

Atributos

Comentários

Tenta calcular um mapeamento para a chave especificada e seu valor mapeado atual (ou nulo se não houver nenhum mapeamento atual).

Adicionado em 1.8.

Por exemplo, para criar ou acrescentar um msg de cadeia de caracteres a um mapeamento de valor:

map.compute(key, (k, v) -> (v == null) ? msg : v.concat(msg))

(Mesclagem de método() geralmente é mais simples de usar para essas finalidades.)

Se a função de remapeamento retornar nulo, o mapeamento será removido (ou permanecerá ausente se inicialmente ausente).

Se a função de remapeamento em si gerar uma exceção (desmarcada), a exceção será relançada e o mapeamento atual ficará inalterado.

A função de remapeamento não deve modificar esse mapa durante a computação.

Java referência para java.util.concurrent.ConcurrentMap.compute.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.

Aplica-se a