Java HashMap Replace () -menetelmä korvaa määritetyn avaimen kartoituksen määritetyllä uudella hashmap-arvolla.
Menetelmän syntaksi replace()
on:
hashmap.replace(K key, V oldValue, V newValue)
Tässä hashmap on HashMap
luokan kohde.
korvaa () -parametrit
replace()
Menetelmä voi kestää 3 parametreja.
- avain - avain, jonka kartoitus on korvattava
- oldValue (valinnainen) - arvo, joka vaihdetaan kartoituksessa
- newValue - oldValue korvataan tällä arvolla
korvaa () Palautusarvot
HashMap- replace()
menetelmä korvaa kartoituksen ja palauttaa:
- edellinen määritettyyn avaimeen liittyvä arvo, jos valinnaista parametria oldValue ei ole
true
, jos valinnainen parametri oldValue on läsnä
Huomautus : Menetelmä palauttaa null
, jos joko määritetty avain on yhdistetty nolla-arvoon tai avainta ei ole hashmapissa.
Esimerkki 1: Korvaa merkintä HashMapissa
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); ) )
Tuotos
HashMap: (1 = Python, 2 = englanti, 3 = JavaScript) Korvattu arvo: English Päivitetty HashMap: (1 = Python, 2 = Java, 3 = JavaScript)
Yllä olevassa esimerkissä olemme luoneet hashmap-nimiset kielet. Tässä olemme käyttäneet korvausmenetelmää () korvaamaan avaimen 1 merkinnät (1 = englanti) määritetyllä arvolla Java.
Tässä replace()
menetelmässä ei ole valinnaista oldValue-parametria. Siksi se palauttaa vanhan arvon (englanniksi).
Esimerkki 2: HashMap korvaa () vanhalla arvolla
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); ) )
Tuotos
Maat: (Canberra = Australia, Ottawa = Kanada, Washington = Amerikka) Maat korvaamisen jälkeen (): (Canberra = Australia, Ottawa = Kanada, Washington = USA)
Yllä olevassa esimerkissä olemme luoneet hashmap-nimetyt maat. Huomaa rivi,
countries.replace("Washington", "America", "USA");
Tässä korvaava () -menetelmä sisältää valinnaisen oldValue-parametrin (Amerikka). Siksi kartoitus, jossa avain Washington kartoittaa Amerikan arvoa, korvataan uudella arvolla USA.
Huomaa kuitenkin viiva,
maat.vaihto ("Canberra", "Uusi-Seelanti", "Victoria");
Täällä, hashmapissa, avain Canberra ei kartoita Uuden-Seelannin arvoa. Siksi korvausmenetelmä () ei korvaa arvoa.
Huomaa : Voimme käyttää Java HashMap clear () -menetelmää kaikkien kartoitusten poistamiseen hashmapista.
HashMap put () vs. korvata()
put()
Ja replace()
-menetelmän syntaksit näyttävät melko samanlaisilta HashMap
.
// syntax of put() hashmap.put(key, value) // syntax of replace() hashmap.replace(key, value)
Ja kun hashmap sisältää määritetyn avaimen kartoituksen , molemmat menetelmät korvaavat määritettyyn avaimeen liittyvän arvon.
Jos kuitenkin hashmap ei sisällä määritetyn avaimen kartoitusta , niin
put()
menetelmä lisää uuden mappaus määritelty avain ja arvoreplace()
menetelmä palaanull
Esimerkki 3: HashMap put () vs. korvata()
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); ) )
Tuotos
HashMap: (1 = Python, 2 = JavaScript) HashMap put (jälkeen) (): (1 = Python, 2 = JavaScript, 3 = Java) HashMap korvaamisen jälkeen (): (1 = Python, 2 = JavaScript)
Yllä olevassa esimerkissä olemme luoneet kaksi hashappia nimeltä kielet1 ja kielet2. Olemme käyttäneet HashMap putAll () -menetelmää niin, että molemmilla hashmapsilla on samat kartoitukset.
Tässä avaimen 3 kartoitus ei ole hashmapissa. Siten,
put()
menetelmä lisää uuden kartoitus (3 = Java) jaHashMap
replace()
menetelmä ei suorita mitään toimintoa
Lisätietoja merkintöjen lisäämisestä on Java HashMap put () -sivulla.