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
nota:如果指定的键映射到null值,或者该键不在hashmap中,则该方法返回null。
import java.util.HashMap; class Main { public static void main(String[] args) { // crear HashMap HashMap<Integer, String> languages = new HashMap<>(); //Agregar entrada al HashMap languages.put(1, "Python"); languages.put(2, "Inglés"); languages.put(3, "JavaScript"); System.out.println("HashMap: " + languages); //Reemplazar clave2del mapeo String value = languages.replace(2, "Java"); System.out.println("Valor reemplazado: " + value); System.out.println("HashMap actualizado: " + languages); } }
输出结果
HashMap: {1=Python, 2=Inglés, 3=JavaScript} Valor reemplazado: Inglés HashMap actualizado: {1=Python, 2=Java, 3=JavaScript}
En el ejemplo anterior, creamos un mapeo de cadenas llamado languages. Aquí, hemos utilizado el método replace() para reemplazar la clave1(1Se reemplaza el elemento =English) con el valor especificado Java.
Aquí, el método replace() no tiene un parámetro oldValue opcional. Por lo tanto, devuelve el valor antiguo (Inglés).
import java.util.HashMap; class Main { public static void main(String[] args) { //crear HashMap HashMap<String, String> countries = new HashMap<>(); //Insertar elementos en HashMap countries.put("Washington", "America"); countries.put("Ottawa", "Canada"); countries.put("Canberra", "Australia"); System.out.println("Countries:\n" + countries); // reemplaza el mapeo {Washington = America} countries.replace("Washington", "America", "USA"); // retorna true countries.replace("Canberra", "New Zealand", "Victoria"); // retorna false System.out.println("El resultado de ejecutar replace() en Countries:\n" + countries); } }
输出结果
Countries: {Canberra=Australia, Ottawa=Canada, Washington=America} El resultado de ejecutar replace() en Countries: {Canberra=Australia, Ottawa=Canada, Washington=USA}
En el ejemplo anterior, creamos un mapeo de cadenas llamado countries. Presta atención a esta línea,
countries.replace("Washington", "America", "USA");
Aquí, el método replace() incluye el parámetro opcional oldValue (América). Por lo tanto, se reemplaza el mapeo de la clave Washington al valor América con el nuevo valor USA.
pero tenga en cuenta que
countries.replace("Canberra", "New Zealand", "Victoria");
Aquí, en el mapeo de hash, la clave Canberra no está mapeada al valor New Zealand. Por lo tanto, el método replace() no reemplazará ningún valor.
notapodemos usar Java HashMap clear() método elimina todos los mapeos del mapeo de hash.
En HashMap, la sintaxis de los métodos put() y replace() parece muy similar.
// sintaxis de put() hashmap.put(key, value) // sintaxis de replace() hashmap.replace(key, value)
y, cuando el mapeo de hash contiene el mapeo especificadoclaveentonces, ambos métodos reemplazarán el valor asociado con la clave especificada.
pero, si el mapeo de hash no contiene el mapeo especificadola clave delpara cualquier mapeo, entonces
el método put() para la clave especificadaclaveyvalorinsertar nuevo mapeo
el método replace() devuelve null
import java.util.HashMap; class Main { public static void main(String[] args) { // crear HashMap HashMap<Integer, String> languages1 = new HashMap<>(); // insertar entradas en HashMap languages1.put(1, "Python"); languages1.put(2, "JavaScript"); //crear otro similar a languages1del HashMap HashMap<Integer, String> languages2 = new HashMap<>(); //llevar todos los elementos de language1poner language2 languages2.putAll(languages1); System.out.println("HashMap: " + languages1); // usar put() languages2.put(3, "Java"); System.out.println("HashMap después de put():\n" + languages2); // usar replace() languages1.replace(3, "Java"); System.out.println("HashMap después de replace():\n" + languages1); } }
输出结果
HashMap: {1=Python, 2=JavaScript} put()之后的HashMap: {1=Python, 2=JavaScript, 3=Java} HashMap 之后的HashMap(): {1=Python, 2=JavaScript}
在上面的示例中,我们创建了两个名为languages1和languages2的哈希映射。我们使用了HashMap putAll()方法,以便两个哈希映射具有相同的映射。
在此,哈希映射中不存在键3的映射。 因此,
put()方法将新的映射(3 = Java)添加到HashMap
replace()方法不执行任何操作
访问Java HashMap put()方法以了解有关添加条目的更多信息。