English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Java HashMap replace()方法将指定键的映射替换为哈希映射中指定的新值
replace()方法的语法为:
hashmap.replace(K key, V oldValue, V newValue)
key - 要替换其映射的键
oldValue (可选)- 映射中要替换的值
newValue - oldValue被替换为这个值
HashMap replace()方法替换映射并返回:
如果可选参数oldValue不存在,则为与指定键关联的上一个值
如果存在可选参数oldValue,则为true
Beachten Sie:如果指定的键映射到null值,或者该键不在hashmap中,则该方法返回null。
import java.util.HashMap; class Main { public static void main(String[] args) { // Erstellen Sie HashMap HashMap<Integer, String> languages = new HashMap<>(); //Fügt den Eintrag in den HashMap hinzu languages.put(1, "Python"); languages.put(2, "English"); languages.put(3, "JavaScript"); System.out.println("HashMap: " + languages); //Ersetzt den Schlüssel2 String value = languages.replace(2, "Java"); System.out.println("Wert, der ersetzt wurde: ", + value); System.out.println("Aktualisierte HashMap: ", + languages); } }
Output Result
HashMap: {1=Python, 2zu aktualisieren = Englisch, 3=JavaScript} Wert, der ersetzt wurde: Englisch Aktualisierte HashMap: {1=Python, 2zu aktualisieren = Java, 3=JavaScript}
Im obigen Beispiel haben wir eine Namenszuordnung namens languages erstellt. Hier haben wir das replace()-Verfahren verwendet, um den Schlüssel1(1Ersetzt den Eintrag mit dem alten Wert (Englisch) durch die angegebene Wert (Java).
Hier hat der replace()-Methoden keine optionalen oldValue-Parameter. Daher gibt er den alten Wert (Englisch) zurück.
import java.util.HashMap; class Main { public static void main(String[] args) { //Erstellen Sie HashMap HashMap<String, String> countries = new HashMap<>(); //Fügt den Eintrag in den HashMap ein countries.put("Washington", "America"); countries.put("Ottawa", "Canada"); countries.put("Canberra", "Australia"); System.out.println("Countries:\n" + countries); // Ersetzt die Zuordnung {Washington = America} countries.replace("Washington", "America", "USA"); // zurückgibt true countries.replace("Canberra", "New Zealand", "Victoria"); // zurückgibt false System.out.println("Nach der Ausführung von replace() für Countries:\n" + countries); } }
Output Result
Countries: {Canberra=Australia, Ottawa=Canada, Washington=America} Nach der Ausführung von replace() für Countries: {Canberra=Australia, Ottawa=Canada, Washington=USA}
Im obigen Beispiel haben wir eine Namenszuordnung namens countries erstellt. Beachten Sie diese Zeile:
countries.replace("Washington", "America", "USA");
Hier umfasst die replace() Methode optional den old Value Parameter (America). Daher wird die Zuordnung, die den Schlüssel Washington auf den Wert America verweist, durch den neuen Wert USA ersetzt.
Aber beachten Sie,
countries.replace("Canberra", "New Zealand", "Victoria");
Hier ist der Schlüssel Canberra im Hash-Mapping nicht auf den Wert New Zealand abgebildet. Daher ersetzt die replace() Methode keinen Wert.
Beachten Sie:Wir können Java HashMap clear() Methode löscht alle Zuordnungen aus dem Hash-Mapping.
In HashMap sehen die Syntaxen von put() und replace() sehr ähnlich aus.
// put() Syntax hashmap.put(key, value) // replace() Syntax hashmap.replace(key, value)
und wenn der Hash-Mapping den angegebenenSchlüsselbeide Methoden ersetzen den Wert, der mit dem angegebenen Schlüssel verknüpft ist.
Aber wenn der Hash-Mapping die angegebene Zuordnung nicht enthältSchlüsselwertJegliche Zuordnung, dann
put() Methode für angegebeneSchlüsselundWertFügen Sie neue Zuordnung hinzu
replace() Methode gibt null zurück
import java.util.HashMap; class Main { public static void main(String[] args) { // Erstellen Sie HashMap HashMap<Integer, String> languages1 = new HashMap<>(); // Fügen Sie Einträge in HashMap ein languages1.put(1, "Python"); languages1.put(2, "JavaScript"); //Erstellen Sie einen anderen ähnlichen languages1des HashMap HashMap<Integer, String> languages2 = new HashMap<>(); //Fügen Sie alle Einträge von language1Legen Sie language hinein2 languages2.putAll(languages1); System.out.println("HashMap: " + languages1); // Verwenden Sie put() languages2.put(3, "Java"); System.out.println("put() nach dem HashMap:\n" + languages2); // Verwenden Sie replace() languages1.replace(3, "Java"); System.out.println("HashMap nach replace():\n" + languages1); } }
Output Result
HashMap: {1=Python, 2=JavaScript} HashMap after put(): {1=Python, 2=JavaScript, 3=Java} HashMap after HashMap(): {1=Python, 2=JavaScript}
In the above example, we created two named languages1and languages2of the hash map. We usedHashMap putAll()methods so that two hash maps have the same mappings.
Here, there is no key in the hash map3. Therefore,
The put() method adds a new mapping(3 = Java)addto HashMap
The replace() method does nothing.
AccessJava HashMap put()Methods to learn more about adding entries.