java基础总结(八十五)--java8新特性之put与compute,computeIfAbsent与putIfAbsent区别

原文链接

  是否覆盖value 返回值
put 覆盖前
compute 覆盖后
putIfAbsent 覆盖前
computeIfAbsent 覆盖后

总结:

  1. put与compute:

           不论key是否存在,强制用value覆盖进去。

           区别:put返回旧value或null,compute返回新的value

    2. putIfAbsent与computeIfAbsent:

           key存在,则不操作,key不存在,则赋值一对新的(key,value)。

           区别:putIfAbsent返回旧value或null,computeIfAbsent返回新的value

猜你喜欢

转载自blog.csdn.net/lsx2017/article/details/114004974