Compartilhar via


IMap.Compute(Object, IBiFunction) Método

Definição

Tenta calcular um mapeamento para a chave especificada e seu valor mapeado atual (ou null se não houver 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.IMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)]
public virtual Java.Lang.Object? 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.IMap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)>]
abstract member Compute : Java.Lang.Object * Java.Util.Functions.IBiFunction -> Java.Lang.Object
override this.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 null se nenhum

Atributos

Comentários

Tenta calcular um mapeamento para a chave especificada e seu valor mapeado atual (ou null se não houver mapeamento atual). Por exemplo, para criar ou acrescentar uma String mensagem a um mapeamento de valores:

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

(O método #merge merge() é muitas vezes mais simples de usar para tais fins.)

Se a função de remapeamento retornar null, o mapeamento será removido (ou permanecerá ausente se inicialmente ausente). Se a própria função de remapeamento lançar uma exceção (não marcada), a exceção será relançada e o mapeamento atual será mantido inalterado.

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

Adicionado em 1.8.

Documentação Java para java.util.Map.compute(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>).

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

Aplica-se a