扫码一下
查看教程更方便
putIfAbsent() 方法会先判断指定的键(key)是否存在,不存在则将键/值对插入到 HashMap 中。
putIfAbsent() 方法的语法为:
hashmap.putIfAbsent(K key, V value)
注 :hashmap 是 HashMap 类的一个对象。
如果所指定的 key 已经在 HashMap 中存在,返回和这个 key 值对应的 value, 如果所指定的 key 不在 HashMap 中存在,则返回 null。
注意 :如果指定 key 之前已经和一个 null 值相关联了 ,则该方法也返回 null。
以下实例演示了 putIfAbsent() 方法的使用:
实例
import java.util.HashMap; public class Main { public static void main(String[] args) { // 创建一个 HashMap HashMap<Integer, String> sites = new HashMap<>(); // 往 HashMap 添加一些元素 sites.put(1, "Google"); sites.put(2, "Jiyik"); sites.put(3, "Taobao"); System.out.println("sites HashMap: " + sites); // HashMap 不存在该key sites.putIfAbsent(4, "Weibo"); // HashMap 中存在 Key sites.putIfAbsent(2, "Wiki"); System.out.println("Updated Languages: " + sites); } }
执行以上程序输出结果为:
sites HashMap: {1=Google, 2=Jiyik, 3=Taobao}
Updated Languages: {1=Google, 2=Jiyik, 3=Taobao, 4=Weibo}
在以上实例中,我们创建了一个名为 sites 的 HashMap,注意这一行:
sites.putIfAbsent(2, "Wiki");
key 为 2 已经存在于 sites 中,所以不会执行插入操作。