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


Java HashMap putIfAbsent()用法及代码示例


如果指定的键已经不在哈希图中,Java HashMap putIfAbsent() 方法会将指定的键/值映射插入到哈希图中。

用法:

hashmap.putIfAbsent(K key, V value)

这里,hashmapHashMap 类的对象。

参数:

putIfAbsent() 方法采用两个参数。

  • key- 指定的value与此相关key
  • value- 指定的key与此映射value

putAbsent() 返回值

  • 如果指定的 key 已存在于哈希图中,则返回与 key 关联的 value
  • 如果指定的 key 已不在哈希图中,则返回 null

注意: 如果指定key以前与一个相关联空值, 然后方法也返回null.

示例 1:Java HashMap putIfAbsent()

import java.util.HashMap;

class Main {
  public static void main(String[] args){

    // create a HashMap
    HashMap<Integer, String> languages = new HashMap<>();

    // add mappings to HashMap
    languages.put(1, "Python");
    languages.put(2, "C");
    languages.put(3, "Java");
    System.out.println("Languages: " + languages);

    // key already not present in HashMap
    languages.putIfAbsent(4, "JavaScript");

    // key already present in HashMap
    languages.putIfAbsent(2, "Swift");
    System.out.println("Updated Languages: " + languages);
  }
}

输出

Languages: {1=Python, 2=C, 3=Java}
Updated Languages: {1=Python, 2=C, 3=Java, 4=JavaScript}

在上面的示例中,我们创建了一个名为 languages 的 hashmap。注意线,

languages.putIfAbsent(4, "JavaScript");

在这里,键 4 尚未与任何值关联。因此,putifAbsent() 方法将映射 {4 = JavaScript} 添加到 hashmap。

注意线,

languages.putIfAbsent(2, "Swift");

在这里,键 2 已经与值 Java 相关联。因此,putIfAbsent() 方法不会将映射 {2 = Swift} 添加到 hashmap。

注意: 我们用过put()将单个映射添加到哈希映射的方法。要了解更多信息,请访问HashMap put.

相关用法


注:本文由纯净天空筛选整理自 Java HashMap putIfAbsent()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。