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
Remarque:如果指定的键映射到null值,或者该键不在hashmap中,则该方法返回null。
import java.util.HashMap; class Main { public static void main(String[] args) { // Créer HashMap HashMap<Integer, String> languages = new HashMap<>(); //Ajouter l'entrée à HashMap languages.put(1, "Python"); languages.put(2, "English"); languages.put(3, "JavaScript"); System.out.println("HashMap: " + languages); //remplacement de la clé2de la carte de hachage String value = languages.replace(2, "Java"); System.out.println("valeur remplacée: " + value); System.out.println("HashMap mis à jour: " + languages); } }
Output result
HashMap: {1=Python, 2=English, 3=JavaScript} valeur remplacée: English HashMap mis à jour: {1=Python, 2=Java, 3=JavaScript}
Dans l'exemple ci-dessus, nous avons créé une carte de hachage nommée languages. Ici, nous avons utilisé la méthode replace() pour remplacer la clé1(1remplace l'entrée =English) par la valeur spécifiée Java.
Ici, la méthode replace() n'a pas de paramètre oldValue optionnel. Par conséquent, elle retourne la valeur ancienne (English).
import java.util.HashMap; class Main { public static void main(String[] args) { //Créer HashMap HashMap<String, String> countries = new HashMap<>(); //Insérer l'élément dans HashMap countries.put("Washington", "America"); countries.put("Ottawa", "Canada"); countries.put("Canberra", "Australia"); System.out.println("Countries:\n" + countries); // remplace la carte de hachage {Washington = America} countries.replace("Washington", "America", "USA"); // retourne true countries.replace("Canberra", "New Zealand", "Victoria"); // retourne false System.out.println("Les Countries après l'exécution de replace():\n" + countries); } }
Output result
Countries: {Canberra=Australia, Ottawa=Canada, Washington=America} Les Countries après l'exécution de replace() : {Canberra=Australia, Ottawa=Canada, Washington=USA}
Dans l'exemple ci-dessus, nous avons créé une carte de hachage nommée countries. Notez cette ligne,
countries.replace("Washington", "America", "USA");
Ici, la méthode replace() inclut un paramètre optionnel oldValue (Amérique). Par conséquent, la correspondance de la clé Washington mappée à la valeur Amérique est remplacée par la nouvelle valeur USA.
Mais veuillez noter que,
countries.replace("Canberra", "New Zealand", "Victoria");
Ici, dans la table de hachage, la clé Canberra n'est pas mappée à la valeur Nouvelle-Zélande. Par conséquent, la méthode replace() ne remplacera aucune valeur.
Remarque:Nous pouvons utiliser Java HashMap clear() Méthode pour supprimer toutes les correspondances du tableau de hachage.
Dans HashMap, la syntaxe des méthodes put() et replace() semble très similaire.
// Syntaxe de put() hashmap.put(key, value) // Syntaxe de replace() hashmap.replace(key, value)
Et, lorsque la table de hachage contient la correspondance spécifiéeCléles deux méthodes remplaceront la valeur associée à la clé spécifiée.
Mais, si la table de hachage ne contient pas la correspondance spécifiéede la cléPour toute correspondance, si
La méthode put() pour la clé spécifiéeCléetValeurInsérer une nouvelle correspondance
La méthode replace() retourne null
import java.util.HashMap; class Main { public static void main(String[] args) { // Créer HashMap HashMap<Integer, String> languages1 = new HashMap<>(); // Insérer des entrées dans HashMap languages1.put(1, "Python"); languages1.put(2, "JavaScript"); //Créer un autre HashMap similaire à languages1du HashMap HashMap<Integer, String> languages2 = new HashMap<>(); //Tous les éléments de language1Ajouter language2 languages2.putAll(languages1); System.out.println("HashMap: " + languages1); // Utiliser put() languages2.put(3, "Java"); System.out.println("HashMap après put():\n" + languages2); // Utiliser replace() languages1.replace(3, "Java"); System.out.println("HashMap après replace():\n" + languages1); } }
Output result
HashMap: {1=Python, 2=JavaScript} HashMap after put(): {1=Python, 2=JavaScript, 3=Java} HashMap followed by HashMap(): {1=Python, 2=JavaScript}
In the above example, we created two named languages1and languages2hash map. We usedHashMap putAll()method so that two hash maps have the same mappings.
Here, there is no key in the hash map3Therefore,
The put() method adds a new mapping(3 = Java) addto HashMap
The replace() method does nothing
AccessJava HashMap put()method to learn more about adding entries.