Java HashMap aizstāt ()

Java HashMap aizstāt () metode aizstāj norādītās atslēgas kartēšanu ar norādīto jauno vērtību hashmap.

Metodes sintakse replace()ir šāda:

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

Šeit hashmap ir HashMapklases objekts .

aizstāt () parametrus

replace()Metodi var veikt 3 parametrus.

  • atslēga - atslēga, kuras kartēšana jāaizstāj
  • oldValue (pēc izvēles) - vērtība, kas jāaizstāj kartēšanā
  • newValue - oldValue tiek aizstāts ar šo vērtību

aizstāt () atgriešanās vērtības

HashMap replace()metode aizstāj kartēšanu un atgriež:

  • iepriekšējā vērtība, kas saistīta ar norādīto atslēgu, ja nav izvēles parametra oldValue
  • true, ja ir izvēles parametrs oldValue

Piezīme . Metode tiek atgriezta null, ja norādītā atslēga ir piesaistīta nulles vērtībai vai atslēga nav hashmap.

1. piemērs: aizstājiet ierakstu 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); ) )

Rezultāts

 HashMap: (1 = Python, 2 = angļu, 3 = JavaScript) Aizstātā vērtība: angļu valodā Atjaunināts HashMap: (1 = Python, 2 = Java, 3 = JavaScript)

Iepriekš minētajā piemērā mēs esam izveidojuši hashmap nosaukto valodas. Šeit mēs izmantojām metodi aizstāt (), lai aizstātu 1. atslēgas ierakstu (1 = angļu valoda) ar norādīto Java vērtību.

Šeit replace()metodei nav izvēles parametra oldValue. Tādējādi tas atgriež veco vērtību (angļu valodā).

2. piemērs: HashMap aizstāj () ar 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); ) )

Rezultāts

 Valstis: (Kanbera = Austrālija, Otava = Kanāda, Vašingtona = Amerika) Valstis pēc aizstāšanas (): (Kanbera = Austrālija, Otava = Kanāda, Vašingtona = ASV)

Iepriekš minētajā piemērā mēs esam izveidojuši hashmap nosaukto valstis. Ievērojiet līniju,

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

Šeit aizstāšanas () metode ietver neobligātu parametru oldValue (Amerika). Tādējādi kartēšana, kur galvenā Vašingtona kartē Amerikas vērtību, tiek aizstāta ar jaunu vērtību ASV.

Tomēr ievērojiet līniju,

 valstis.aizstāt ("Kanbera", "Jaunzēlande", "Viktorija");

Šeit, hašmahā, atslēga Kanbera nenosaka Jaunzēlandes vērtību. Tādējādi metode aizstāt () neaizstāj nevienu vērtību.

Piezīme . Lai noņemtu visus kartējumus no hashmap, mēs varam izmantot Java HashMap clear () metodi.

HashMap put () Vs. aizvietot()

Par sintakse put()un replace()metodes izskatās diezgan līdzīgs HashMap.

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

Un, ja hashmap satur norādītās atslēgas kartēšanu , abas metodes aizstāj vērtību, kas saistīta ar norādīto atslēgu.

Tomēr, ja hashmap nesatur norādīto atslēgu kartēšanu , tad

  • put()metode ievieto jaunu kartēšanu norādīto atslēgu un vērtību
  • ka replace()metode atgriežnull

3. piemērs: HashMap put () Vs. aizvietot()

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

Rezultāts

 HashMap: (1 = Python, 2 = JavaScript) HashMap pēc put (): (1 = Python, 2 = JavaScript, 3 = Java) HashMap pēc aizstāšanas (): (1 = Python, 2 = JavaScript)

Iepriekš minētajā piemērā mēs esam izveidojuši divas hashmaps ar nosaukumiem valodas1 un valodas2. Mēs esam izmantojuši metodi HashMap putAll (), lai abiem hashmaps būtu vienādi kartējumi.

Šeit 3. atslēgas kartēšana nav iekļauta hashmap. Tādējādi

  • put()metode pievieno jaunu kartēšanu (3 = Java) , laiHashMap
  • replace()metode nav jāveic nekādas darbības

Lai uzzinātu vairāk par ierakstu pievienošanu, apmeklējiet Java HashMap put ().

Interesanti raksti...