Java Map中的merge()方法用于将指定的键和值合并到Map中。如果Map中已经存在指定的键,则会使用指定的函数将旧值和新值合并。以下是merge()方法的使用示例:
Map<String, Integer> myMap = new HashMap<>();
myMap.put("apple", 1);
myMap.put("banana", 2);
myMap.merge("apple", 2, Integer::sum);
myMap.merge("orange", 3, Integer::sum);
在上面的示例中,我们创建了一个HashMap对象,并使用put()方法将两个键值对添加到Map中。然后,我们使用merge()方法将键”apple”的值与2合并。由于Map中已经存在键”apple”,因此使用指定的函数将旧值1和新值2相加,得到3。然后,我们使用merge()方法将键”orange”的值与3合并。由于Map中不存在键”orange”,因此将键”orange”和值3添加到Map中。
需要注意的是,merge()方法的时间复杂度为O(1),因此它是非常高效的。但是,如果您需要频繁地检查Map中是否存在某个键,建议使用containsKey()方法,因为它的时间复杂度为O(1)。
另外,需要注意的是,如果指定的函数返回null,则会从Map中删除指定的键。因此,在使用merge()方法合并Map中的值时,需要注意指定的函数是否会返回null。