IConcurrentMap.IMap.Compute(Object, IBiFunction) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.