HashMap de Java replaceAll ()

O método Java HashMap replaceAll () substitui todos os mapeamentos do hashmap pelo resultado da função especificada.

A sintaxe do replaceAll()método é:

 hashmap.replaceAll(Bifunction function)

Aqui, hashmap é um objeto da HashMapclasse.

Parâmetros replaceAll ()

O replaceAll()método usa um único parâmetro.

  • função - operações a serem aplicadas a cada entrada do mapa de hash

valor de retorno replaceAll ()

O replaceAll()método não retorna nenhum valor. Em vez disso, ele substitui todos os valores do hashmap por novos valores de função.

Exemplo 1: alterar todos os valores para maiúsculas

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap languages = new HashMap(); // add entries to the HashMap languages.put(1, "java"); languages.put(2, "javascript"); languages.put(3, "python"); System.out.println("HashMap: " + languages); // Change all value to uppercase languages.replaceAll((key, value) -> value.toUpperCase()); System.out.println("Updated HashMap: " + languages); ) )

Resultado

 HashMap: (1 = java, 2 = javascript, 3 = python) HashMap atualizado: (1 = JAVA, 2 = JAVASCRIPT, 3 = PYTHON)

No exemplo acima, criamos um hashmap denominado linguagens. Observe a linha,

 languages.replaceAll((key, value) -> value.toUpperCase());

Aqui,

  • (key, value) -> value.toUpperCase()é uma expressão lambda. Ele converte todos os valores do hashmap em maiúsculas e o retorna. Para saber mais, visite Java Lambda Expression.
  • replaceAll() substitui todos os valores do hashmap por valores retornados pela expressão lambda.

Exemplo 2: Substitua todos os valores pelo quadrado das chaves

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap numbers = new HashMap(); // insert entries to the HashMap numbers.put(5, 0); numbers.put(8, 1); numbers.put(9, 2); System.out.println("HashMap: " + numbers); // replace all value with the square of key numbers.replaceAll((key, value) -> key * key);; System.out.println("Updated HashMap: " + numbers); ) )

Resultado

 HashMap: (5 = 0, 8 = 1, 9 = 2) HashMap atualizado: (5 = 25, 8 = 64, 9 = 81)

No exemplo acima, criamos um hashmap denominado números. Observe a linha,

 numbers.replaceAll((key, value) -> key * key);

Aqui,

  • (key, value) -> key * key- calcula o quadrado da chave e o retorna
  • replaceAll() - substitui todos os valores do hashmap por valores retornados por (key, value) -> key * key

Artigos interessantes...