Java HashMap replaceAll ()

Die Java HashMap replaceAll () -Methode ersetzt alle Zuordnungen der Hashmap durch das Ergebnis der angegebenen Funktion.

Die Syntax der replaceAll()Methode lautet:

 hashmap.replaceAll(Bifunction function)

Hier ist Hashmap ein Objekt der HashMapKlasse.

replaceAll () -Parameter

Die replaceAll()Methode verwendet einen einzelnen Parameter.

  • Funktion - Operationen, die auf jeden Eintrag der Hashmap angewendet werden sollen

replaceAll () Rückgabewert

Die replaceAll()Methode gibt keine Werte zurück. Vielmehr werden alle Werte der Hashmap durch neue Werte aus der Funktion ersetzt.

Beispiel 1: Ändern Sie alle Werte in Großbuchstaben

 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); ) )

Ausgabe

 HashMap: (1 = Java, 2 = Javascript, 3 = Python) Aktualisierte HashMap: (1 = JAVA, 2 = JAVASCRIPT, 3 = PYTHON)

Im obigen Beispiel haben wir eine Hashmap mit dem Namen Languages ​​erstellt. Beachten Sie die Linie,

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

Hier,

  • (key, value) -> value.toUpperCase()ist ein Lambda-Ausdruck. Es konvertiert alle Werte der Hashmap in Großbuchstaben und gibt sie zurück. Weitere Informationen finden Sie unter Java Lambda Expression.
  • replaceAll() Ersetzt alle Werte der Hashmap durch Werte, die vom Lambda-Ausdruck zurückgegeben werden.

Beispiel 2: Ersetzen Sie alle Werte durch das Tastenquadrat

 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); ) )

Ausgabe

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

Im obigen Beispiel haben wir eine Hashmap mit dem Namen "Zahlen" erstellt. Beachten Sie die Linie,

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

Hier,

  • (key, value) -> key * key- berechnet das Quadrat des Schlüssels und gibt es zurück
  • replaceAll() - ersetzt alle Werte der Hashmap durch Werte, die von zurückgegeben werden (key, value) -> key * key

Interessante Beiträge...