Zamenjava Java HashMap ()

Metoda Java HashMap replace () nadomesti preslikavo za navedeni ključ z določeno novo vrednostjo v hashmapu.

Sintaksa replace()metode je:

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

Tu je hashmap predmet HashMaprazreda.

replace () Parametri

replace()Postopek lahko traja 3 parametre.

  • key - ključ, katerega preslikavo je treba zamenjati
  • oldValue (neobvezno) - vrednost, ki jo je treba zamenjati pri preslikavi
  • newValue - oldValue se nadomesti s to vrednostjo

replace () Vrnjene vrednosti

Metoda HashMap replace()nadomesti preslikavo in vrne:

  • prejšnjo vrednost, povezano z navedenim ključem, če neobvezni parameter oldValue ni prisoten
  • true, če je prisoten neobvezni parameter oldValue

Opomba : Metoda vrne null, če je navedeni ključ preslikan na ničelno vrednost ali ključ ni prisoten na hashmapu.

Primer 1: Zamenjajte vnos v 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); ) )

Izhod

 HashMap: (1 = Python, 2 = angleščina, 3 = JavaScript) Nadomeščena vrednost: angleško posodobljeno HashMap: (1 = Python, 2 = Java, 3 = JavaScript)

V zgornjem primeru smo ustvarili hashmap z imenom jeziki. Tu smo uporabili metodo replace () za zamenjavo vnosa za ključ 1 (1 = angleščina) z določeno vrednostjo Java.

Tu replace()metoda nima izbirnega parametra oldValue. Vrne torej staro vrednost (angleščina).

Primer 2: HashMap replace () s 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); ) )

Izhod

 Države: (Canberra = Avstralija, Ottawa = Kanada, Washington = Amerika) Države po zamenjavi (): (Canberra = Avstralija, Ottawa = Kanada, Washington = ZDA)

V zgornjem primeru smo ustvarili hashmap z imenom države. Opazite vrstico,

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

Tukaj metoda replace () vključuje neobvezni parameter oldValue (Amerika). Zato je preslikava, kjer ključni Washington preslikava Ameriko, zamenjana z novo vrednostjo ZDA.

Vendar upoštevajte vrstico,

 countries.replace ("Canberra", "Nova Zelandija", "Victoria");

Tukaj v hashmapu ključ Canberra ne preslika vrednosti Nove Zelandije. Zato metoda replace () ne nadomesti nobene vrednosti.

Opomba : Za odstranjevanje vseh preslikav iz hashmapa lahko uporabimo metodo Java HashMap clear ().

HashMap put () Vs. zamenjati()

Sintaksa metode put()in je replace()videti precej podobna v HashMap.

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

In če hashmap vsebuje preslikavo za navedeni ključ , potem obe metodi nadomestita vrednost, povezano z navedenim ključem.

Če pa hashmap ne vsebuje preslikave za navedeni ključ , potem

  • put()Postopek vstavi novo preslikavo za izbrano ključa in vrednosti
  • je replace()metoda vrnenull

Primer 3: HashMap put () Vs. zamenjati()

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

Izhod

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

V zgornjem primeru smo ustvarili dve hashmapi z imenom languages1 in languages2. Uporabili smo metodo HashMap putAll (), tako da imata oba hashmapa enaka preslikava.

Tu preslikava za ključ 3 v hashmapu ni prisotna. Torej,

  • put()Postopek doda nov preslikave (3 = Java) doHashMap
  • replace()metoda ne opravlja nobene operacije

Če želite izvedeti več o dodajanju vnosov, obiščite Java HashMap put ().

Zanimive Članki...