Java HashMap replace ()

Metoda Java HashMap replace () înlocuiește maparea cheii specificate cu valoarea nouă specificată într-un hashmap.

Sintaxa replace()metodei este:

 hashmap.replace(K key, V oldValue, V newValue)

Aici, hashmap este un obiect al HashMapclasei.

replace () Parametri

replace()Metoda poate dura 3 parametri.

  • cheie - cheie a cărei mapare urmează să fie înlocuită
  • oldValue (opțional) - valoare care trebuie înlocuită în mapare
  • newValue - OldValue este înlocuit cu această valoare

replace () Valori returnate

Metoda HashMap replace()înlocuiește maparea și returnează:

  • valoarea anterioară asociată cu cheia specificată, dacă parametrul opțional oldValue nu este prezent
  • true, dacă parametrul opțional oldValue este prezent

Notă : Metoda revine null, dacă fie cheia specificată este mapată la o valoare nulă, fie cheia nu este prezentă pe hashmap.

Exemplul 1: Înlocuiți o intrare în HashMap

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap languages = new HashMap(); // add entries to HashMap languages.put(1, "Python"); languages.put(2, "English"); languages.put(3, "JavaScript"); System.out.println("HashMap: " + languages); // replace mapping for key 2 String value = languages.replace(2, "Java"); System.out.println("Replaced Value: " + value); System.out.println("Updated HashMap: " + languages); ) )

Ieșire

 HashMap: (1 = Python, 2 = Engleză, 3 = JavaScript) Valoare înlocuită: Engleză HashMap Actualizată: (1 = Python, 2 = Java, 3 = JavaScript)

În exemplul de mai sus, am creat un hashmap numit limbi. Aici, am folosit metoda replace () pentru a înlocui intrarea pentru cheia 1 (1 = engleză) cu valoarea specificată Java.

Aici, replace()metoda nu are parametrul opțional oldValue. Prin urmare, returnează vechea valoare (engleză).

Exemplul 2: HashMap replace () cu Old Value

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap countries = new HashMap(); // insert items to the HashMap countries.put("Washington", "America"); countries.put("Ottawa", "Canada"); countries.put("Canberra", "Australia"); System.out.println("Countries:" + countries); // replace mapping (Washington = America) countries.replace("Washington", "America", "USA"); // return true countries.replace("Canberra", "New Zealand", "Victoria"); // return false System.out.println("Countries after replace():" + countries); ) )

Ieșire

 Țări: (Canberra = Australia, Ottawa = Canada, Washington = America) Țări după înlocuire (): (Canberra = Australia, Ottawa = Canada, Washington = SUA)

În exemplul de mai sus, am creat un hashmap numit țări. Observați linia,

 countries.replace("Washington", "America", "USA");

Aici, metoda replace () include parametrul opțional oldValue (America). Prin urmare, maparea în care hărțile cheie Washington pentru a valorifica America este înlocuită cu o nouă valoare SUA.

Cu toate acestea, observați linia,

 countries.replace („Canberra”, „Noua Zeelandă”, „Victoria”);

Aici, în hashmap, cheia Canberra nu mapează pentru a aprecia Noua Zeelandă. Prin urmare, metoda replace () nu înlocuiește nicio valoare.

Notă : Putem folosi metoda Java HashMap clear () pentru a elimina toate mapările din hashmap.

HashMap put () vs. a inlocui()

Sintaxa metodei put()și replace()arată destul de similară în HashMap.

 // syntax of put() hashmap.put(key, value) // syntax of replace() hashmap.replace(key, value)

Și, atunci când hashmap conține maparea pentru cheia specificată , atunci ambele metode înlocuiesc valoarea asociată cu cheia specificată.

Cu toate acestea, dacă hashmap-ul nu conține nicio mapare pentru cheia specificată , atunci

  • put()metoda inserează noua maparea pentru specificat cheia și valoarea
  • de replace()metoda returneazanull

Exemplul 3: HashMap put () vs. a inlocui()

 import java.util.HashMap; class Main ( public static void main(String() args) ( // create an HashMap HashMap languages1 = new HashMap(); // insert entries to HashMap languages1.put(1, "Python"); languages1.put(2, "JavaScript"); // create another HashMap similar to languages1 HashMap languages2 = new HashMap(); // puts all entries from languages1 to languages2 languages2.putAll(languages1); System.out.println("HashMap: " + languages1); // use of put() languages2.put(3, "Java"); System.out.println("HashMap after put():" + languages2); // use of replace() languages1.replace(3, "Java"); System.out.println("HashMap after replace():" + languages1); ) )

Ieșire

 HashMap: (1 = Python, 2 = JavaScript) HashMap după put (): (1 = Python, 2 = JavaScript, 3 = Java) HashMap după replace (): (1 = Python, 2 = JavaScript)

În exemplul de mai sus, am creat două hashmap-uri denumite languages1 și languages2. Am folosit metoda HashMap putAll () astfel încât ambele hashmap-uri să aibă aceleași mapări.

Aici, maparea pentru cheia 3 nu este prezentă în hashmap. Prin urmare,

  • put()metoda adaugă noua trasare (3 = Java) pentru aHashMap
  • replace()metoda nu efectuează nicio operație

Pentru a afla mai multe despre adăugarea de intrări, vizitați Java HashMap put ().

Articole interesante...