putIfAbsent
是 HashMap
类中的方法,用于将指定的键值对添加到映射中,仅当指定的键在映射中不存在时才执行添加操作。如果指定的键已经存在于映射中,则不会执行添加操作,返回旧值。
computeIfAbsent
方法也是 HashMap
类中的方法,用于根据指定的键计算一个值并将其与指定的键相关联。如果指定的键在映射中不存在,则会执行计算操作并将计算的结果与键关联;如果指定的键已经存在于映射中,则不会执行计算操作,返回现有的值。
所以 putIfAbsent
方法只是简单地将指定的键值对添加到映射中,而 computeIfAbsent
方法可以根据需要计算值再添加到映射中。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:java8中hashmap的并发问题解决