Java map.getOrDefault()方法的用法详解

网友投稿 259 2023-02-14

Java map.getOrDefault()方法的用法详解

Map.getOrDefault(Object key, V defaultValue)方法的作用是:

当Map集合中有这个key时,就使用这个key值;

如果没有就使用默认值defaultValue。

代码示例如下:

HashMap map = new HashMap<>();

map.put("name", "cookie");

map.put("age", "18");

map.put("sex", "女");

String name = map.getOrDefault("name", "random");

System.out.println(name);// cookie,map中存在name,获得name对应的value

int score = map.getOrDefault("score", 80);

System.out.println(sconUFJkGakre);// 80,map中不存在score,使用默认值80

补充知识:java8中java.util.Map接口新增默认方法说明

###前言:

1.看了Map接口新增的几个默认方法,测试了一下用法。在这里分享一下;

###新增方法:

//若传入的key对应的value为null或者key不存在Map中,则返回defaultValue

1. default V getOrDefault(Object key, V defaultValue)

//遍历Map集合,方法比较爽,省的自己写迭代器了

2. default void forEach(BiConsumer super K, ? super V> action)

//全部修改map的value值,修改的值取决于传入Lambda的返回值

3. default void replaceAll(BiFunction super K, ? super V, ? extends V> function)

//若key对应的Value为空或者null,则使用value替代

4. default V putIfAbsent(K key, V value)

//若传入的value和map中key对应的value相等,则删除,返回true,否者,返回false

5. default boolean remove(Object key, Object value)

//oldValue和Map中key对应的value相等,或者Map不包含knUFJkGakey,则返回false,否则想key,newValue存放进Map

6. default boolean replace(K key, V oldValue, V newValue)

oldValue和Map中key对应的value相等,或者Map不包含key,则返回false,否则想key,newValue替换进Map

7. default V replace(K key, V value)

8. default V computeIfAbsent(K key,

Function super K, ? extends V> mappingFunction)

9. default V computeIfPresent(K key,

BiFunction super K, ? super V, ? extends V> remappingFunction)

10. default V compute(K key,

BiFunction super K, ? super V, ? extends V> remappingFunction)

11. default V merge(K key, V value,

BiFunction super V, ? super V, ? extends V> remappingFunction)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java8中 LocalDate和java.sql.Date的相互转换操作
下一篇:Java jdk安装及javac命令无效解决方案
相关文章

 发表评论

暂时没有评论,来抢沙发吧~