📜  Java中的 HashMap putIfAbsent(key, value) 方法及示例(1)

📅  最后修改于: 2023-12-03 15:01:53.499000             🧑  作者: Mango

Java中的 HashMap putIfAbsent(key, value) 方法及示例

在Java中,HashMap是一种非常常见的数据结构,它提供了许多有用的方法,其中之一就是putIfAbsent(key, value)方法。这个方法可以向HashMap中添加一个键值对,但是如果这个键已经存在,则不会覆盖原有的值,而是返回原有的值。

语法
V putIfAbsent(K key, V value)
  • key:要插入的键。
  • value:要插入的值。
示例

下面是一个简单的实例,展示了如何使用putIfAbsent方法。

import java.util.HashMap;

public class HashMapDemo {

    public static void main(String[] args) {

        // 创建HashMap
        HashMap<String, Integer> map = new HashMap<>();

        // 添加键值对
        map.put("a", 1);
        map.put("b", 2);
        map.put("c", 3);

        // 使用putIfAbsent
        Integer val1 = map.putIfAbsent("c", 4); // 将不会添加进去
        Integer val2 = map.putIfAbsent("d", 4); // 将会添加进去

        // 输出结果
        System.out.println(map); // {a=1, b=2, c=3, d=4}
        System.out.println(val1); // 3
        System.out.println(val2); // null

    }
}

在这个例子中,我们创建了一个HashMap,并添加了三个键值对。然后我们使用putIfAbsent方法添加了两个更多的键值对。第一个键值对使用了已存在的键“c”,因此它不会添加到HashMap中,而是返回了原有的值。第二个键值对使用了一个新的键“d”,因此它被添加到HashMap中,而返回值为null。

在这个示例中,我们可以看到putIfAbsent方法的使用效果。如果你需要向HashMap中添加键值对,但是不想覆盖已存在的键,那么这个方法就是你所需的。