jdk8:map.getOrDefault

jdk8中Map新增了一个方法:getOrDefault;code

以前咱们少不了下面的写法get

Map<String,Integer> dataMap = initDataMap();
int age;
if(dataMap.containsKey("xiaoming")) {
    age = dataMap.get("xiaoming");
} else {
    age = 20;
}
return age;

在jdk8之后。这个写法能够简化成下面这种源码

Map<String,Integer> dataMap = initDataMap();
retrun dataMap.getOrDefault("xiaoming",20);

其源码以下it

default V getOrDefault(Object key, V defaultValue) {
        V v;
        return (((v = get(key)) != null) || containsKey(key))
            ? v
            : defaultValue;
    }
相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息