Java HashMap asendab ()

Java HashMapi asendaja () meetod asendab määratud võtme vastendamise hashmapis määratud uue väärtusega.

Meetodi süntaks replace()on:

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

Siin on hashmap HashMapklassi objekt .

asenda () parameetrid

replace()Meetod võib võtta 3 parameetreid.

  • võti - võti, mille kaardistamine tuleb asendada
  • oldValue (valikuline) - kaardistamisel asendatav väärtus
  • newValue - vanaValue asendatakse selle väärtusega

asenda () Tagastusväärtused

HashMapi replace()meetod asendab kaardistamise ja tagastab:

  • eelmine määratud võtmega seotud väärtus, kui valikulist parameetrit oldValue pole
  • true, kui valikuline parameeter oldValue on olemas

Märkus . Meetod tagastatakse null, kui kas määratud võti on vastendatud nullväärtusele või võtit pole hashmapil.

Näide 1: Asendage kirje HashMapis

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

Väljund

 HashMap: (1 = Python, 2 = inglise, 3 = JavaScript) Asendatud väärtus: inglise keeles Uuendatud HashMap: (1 = Python, 2 = Java, 3 = JavaScript)

Ülaltoodud näites oleme loonud hashmapi nimega keeled. Siin kasutasime meetodit Replace (), et asendada võtme 1 kirje (1 = inglise keel) määratud väärtusega Java.

Siin pole replace()meetodil valikulist parameetrit oldValue. Seega tagastab vana väärtuse (inglise keeles).

Näide 2: HashMap asendab () vana väärtusega

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

Väljund

 Riigid: (Canberra = Austraalia, Ottawa = Kanada, Washington = Ameerika) Riigid pärast asendamist (): (Canberra = Austraalia, Ottawa = Kanada, Washington = USA)

Ülaltoodud näites oleme loonud hashmapi nimega riigid. Pange tähele joont,

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

Siin hõlmab asendus () valikulist parameetrit oldValue (Ameerika). Seetõttu asendatakse kaardistamine, kus võtmekaart Washington kaardistab Ameerika väärtustamist, uue väärtusega USA.

Pange siiski tähele joont,

 riigid.vahetus ("Canberra", "Uus-Meremaa", "Victoria");

Siin, hashmapis, ei kaardista võti Canberra Uus-Meremaa väärtustamist. Seega ei asenda asendus () ühtegi väärtust.

Märkus . Me võime kasutada Java HashMap clear () meetodit, et eemaldada kõik vastendused hashmapist.

HashMap pani () vs. asenda ()

put()Ja replace()meetodi süntaks näeb aastal välja üsna sarnane HashMap.

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

Ja kui hashmap sisaldab määratud võtme vastendamist, asendavad mõlemad meetodid määratud võtmega seotud väärtuse.

Kui aga hashmap ei sisalda määratud võtme vastendamist , siis

  • put()meetod lisab uue kaardistamise määratud võti ja väärtus
  • replace()meetod tagastabnull

Näide 3: HashMap put () vs. asenda ()

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

Väljund

 HashMap: (1 = Python, 2 = JavaScript) HashMap pärast panemist (): (1 = Python, 2 = JavaScript, 3 = Java) HashMap pärast asendamist (): (1 = Python, 2 = JavaScript)

Ülaltoodud näites oleme loonud kaks hashmi nimega keeled1 ja keeled2. Oleme kasutanud meetodit HashMap putAll (), nii et mõlemal hashmapil on samad kaardistused.

Siin ei ole võtme 3 kaardistamine hashmapis olemas. Seega

  • put()meetod lisab uue kaardistamise (3 = Java) kuniHashMap
  • replace()meetod ei toimi ühegi operatsiooni

Kirjete lisamise kohta lisateabe saamiseks külastage Java HashMapi put ().

Huvitavad Artiklid...