当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java HashMap replace(key, oldValue, newValue)用法及代码示例


HashMap类实现的Map接口的replace(K key,V oldValue,V newValue)方法仅在先前将键映射为指定的旧值时才用于替换指定键的旧值。

用法:

default boolean replace(K key, V oldValue, V newValue)

参数:此方法接受三个参数:


  • key:这是必须替换其值的元素的键。
  • oldValue:这是旧值,必须使用提供的键进行映射。
  • newValue:这是必须与指定键映射的新值。

返回值:如果替换了旧值,则此方法返回布尔值true,否则返回false。

异常:该方法将抛出:

  • NullPointerException 如果指定的键或值是null,并且此映射不允许空键或值,并且
  • IllegalArgumentException如果指定键或值的某些属性阻止将其存储在此映射中。

程序1:

// Java program to demonstrate 
// replace(K key, V oldValue, V newValue) method 
  
import java.util.*; 
  
public class GFG { 
  
    // Main method 
    public static void main(String[] args) 
    { 
  
        // Create a HashMap and add some values 
        HashMap<String, Integer> map 
            = new HashMap<>(); 
        map.put("a", 100); 
        map.put("b", 300); 
        map.put("c", 300); 
        map.put("d", 400); 
  
        // print map details 
        System.out.println("HashMap:"
                           + map.toString()); 
  
        // provide old value, new value for the key 
        // which has to replace it's old value, using 
        // replace(K key, V oldValue, V newValue) method 
        map.replace("b", 300, 200); 
  
        // print new mapping 
        System.out.println("New HashMap:"
                           + map.toString()); 
    } 
}
输出:
HashMap:{a=100, b=300, c=300, d=400}
New HashMap:{a=100, b=200, c=300, d=400}

程序2:

// Java program to demonstrate 
// replace(K key, V oldValue, V newValue) method 
  
import java.util.*; 
  
public class GFG { 
  
    // Main method 
    public static void main(String[] args) 
    { 
  
        // Create a HashMap and add some values 
        HashMap<String, Integer> map 
            = new HashMap<>(); 
        map.put("a", 100); 
        map.put("b", 300); 
        map.put("c", 300); 
        map.put("d", 400); 
  
        // print map details 
        System.out.println("HashMap:"
                           + map.toString()); 
  
        // provide old value, new value for the key 
        // which has to replace it's old value, 
        // and store the return value in isReplaced using 
        // replace(K key, V oldValue, V newValue) method 
        boolean isReplaced = map.replace("b", 200, 500); 
  
        // print the value of isReplaced 
        System.out.println("Old value for 'b' was "
                           + "replaced:" + isReplaced); 
  
        // print new mapping 
        System.out.println("New HashMap:"
                           + map.toString()); 
    } 
}
输出:
HashMap:{a=100, b=300, c=300, d=400}
Old value for 'b' was replaced:false
New HashMap:{a=100, b=300, c=300, d=400}

参考文献: https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html#replace-K-V-V-



相关用法


注:本文由纯净天空筛选整理自iamvineettiwari012大神的英文原创作品 HashMap replace(key, oldValue, newValue) method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。