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;
    }
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息