Java HashMap-ersättningsmetoden () ersätter kartläggningen för den angivna nyckeln med det angivna nya värdet i en hashmap.
Syntaxen för replace()
metoden är:
hashmap.replace(K key, V oldValue, V newValue)
Här är hashmap ett objekt i HashMap
klassen.
ersätt () Parametrar
Den replace()
metod kan ta 3 parametrar.
- nyckel - nyckel vars mappning ska bytas ut
- oldValue (valfritt) - värde som ska ersättas i kartläggningen
- newValue - oldValue ersätts med detta värde
ersätt () Returvärden
HashMap- replace()
metoden ersätter kartläggningen och returnerar:
- föregående värde associerat med den angivna nyckeln, om den valfria parametern oldValue inte finns
true
, om den valfria parametern oldValue finns
Obs! Metoden returneras null
om antingen den angivna nyckeln mappas till ett nollvärde eller om nyckeln inte finns på hashmap.
Exempel 1: Ersätt en post i 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); ) )
Produktion
HashMap: (1 = Python, 2 = engelska, 3 = JavaScript) Ersatt värde: engelska Uppdaterat HashMap: (1 = Python, 2 = Java, 3 = JavaScript)
I exemplet ovan har vi skapat en hashmap med namnet språk. Här har vi använt ersättningsmetoden () för att ersätta posten för nyckel 1 (1 = engelska) med det angivna värdet Java.
Här har replace()
metoden inte den valfria parametern oldValue. Därför returnerar det gamla värdet (engelska).
Exempel 2: HashMap ersätt () med gammalt värde
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); ) )
Produktion
Länder: (Canberra = Australien, Ottawa = Kanada, Washington = Amerika) Länder efter ersätter (): (Canberra = Australien, Ottawa = Kanada, Washington = USA)
I exemplet ovan har vi skapat en hashmap med namnen länder. Lägg märke till raden,
countries.replace("Washington", "America", "USA");
Här innefattar ersättningsmetoden () den valfria parametern oldValue (Amerika). Därför ersätts kartläggningen där nyckel Washington kartläggs för att värdera Amerika med nytt värde USA.
Lägg märke till raden,
länder. ersätta ("Canberra", "Nya Zeeland", "Victoria");
Här, i hashmap, kartläggs inte nyckeln Canberra för att värdera Nya Zeeland. Därför ersätter metoden () inte något värde.
Obs! Vi kan använda metoden Java HashMap clear () för att ta bort alla mappningar från hashmap.
HashMap put () Vs. byta ut()
Syntaxen för put()
och replace()
metoden ser ganska lika ut i HashMap
.
// syntax of put() hashmap.put(key, value) // syntax of replace() hashmap.replace(key, value)
Och när hashmappen innehåller kartläggningen för den angivna nyckeln , ersätter båda metoderna värdet som är associerat med den angivna nyckeln.
Men om hashmap inte innehåller någon mappning för den angivna nyckeln , då
- den
put()
metod infogar den nya mappning för den angivna nyckeln och värdet - de
replace()
metoden returnerarnull
Exempel 3: HashMap put () Vs. byta ut()
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); ) )
Produktion
HashMap: (1 = Python, 2 = JavaScript) HashMap efter put (): (1 = Python, 2 = JavaScript, 3 = Java) HashMap efter ersättare (): (1 = Python, 2 = JavaScript)
I exemplet ovan har vi skapat två hashmaps med namnet språk1 och språk2. Vi har använt HashMap putAll () -metoden så att båda hashmaps har samma mappningar.
Här finns inte kartläggningen för nyckel 3 i hashmappen. Därmed,
- det
put()
förfarande adderar det nya kart (3 = Java) tillHashMap
- den
replace()
metoden inte utför någon operation
För att lära dig mer om hur du lägger till poster, besök Java HashMap put ().