merge()方法的语法
hashmap.merge(key, value, remappingFunction)
merge()
方法会先判断指定的key
值是否在hashmap中存在,
如果不存在,则添加键值对到hashmap中;
如果存在,则执行后面的重新映射函数。
merge()
方法的返回值:如果key
不存在,则将新添加的value
值作为返回值;如果key
已经存在,则返回通过remappingFunction
重新计算后的结果。
代码演示
public class Test {
public static void main(String[] args) {
HashMap<String, Integer> prices = new HashMap<>();
prices.put("Shoes", 200);
prices.put("Bag", 100);
System.out.println(prices);
System.out.println();
int returnValue = prices.merge("Shirts", 100, (oldValue,newValue)->oldValue+newValue);
System.out.println(returnValue);
System.out.println(prices);
System.out.println();
int bag = prices.merge("Bag", 50, (a, b) -> a + b);
System.out.println(bag);
System.out.println(prices);
}
}
![结果](https://i-blog.csdnimg.cn/direct/add4a01f4e7f41afbdc0f80580439900.jpeg#pic_center)