Java中如何使用map.getOrDefault()方法实现默认值获取?

2026-04-30 12:482阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计542个文字,预计阅读时间需要3分钟。

Java中如何使用map.getOrDefault()方法实现默认值获取?

Map.getOrDefault(Object key, V defaultValue) 方法的功能是:当Map集合中存在这个key时,就使用这个key对应的值;如果不存在,就使用默认值defaultValue。

代码示例:HashMap map=new HashMap();map.put(name, 张三);String result=map.getOrDefault(name, 李四);System.out.println(result); // 输出:张三

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

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

Java中如何使用map.getOrDefault()方法实现默认值获取?

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

代码示例如下:

HashMap<String, String> 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(score);// 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不包含key,则返回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)

以上这篇Java map.getOrDefault()方法的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

标签:用法

本文共计542个文字,预计阅读时间需要3分钟。

Java中如何使用map.getOrDefault()方法实现默认值获取?

Map.getOrDefault(Object key, V defaultValue) 方法的功能是:当Map集合中存在这个key时,就使用这个key对应的值;如果不存在,就使用默认值defaultValue。

代码示例:HashMap map=new HashMap();map.put(name, 张三);String result=map.getOrDefault(name, 李四);System.out.println(result); // 输出:张三

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

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

Java中如何使用map.getOrDefault()方法实现默认值获取?

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

代码示例如下:

HashMap<String, String> 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(score);// 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不包含key,则返回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)

以上这篇Java map.getOrDefault()方法的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

标签:用法