Java map.getOrDefault()方法的用法詳解
Map.getOrDefault(Object key, V defaultValue)方法的作用是:
當(dāng)Map集合中有這個(gè)key時(shí),就使用這個(gè)key值;
如果沒(méi)有就使用默認(rèn)值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對(duì)應(yīng)的value int score = map.getOrDefault('score', 80); System.out.println(score);// 80,map中不存在score,使用默認(rèn)值80
補(bǔ)充知識(shí):java8中java.util.Map接口新增默認(rèn)方法說(shuō)明
###前言:
1.看了Map接口新增的幾個(gè)默認(rèn)方法,測(cè)試了一下用法。在這里分享一下;
###新增方法:
//若傳入的key對(duì)應(yīng)的value為null或者key不存在Map中,則返回defaultValue1. 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對(duì)應(yīng)的Value為空或者null,則使用value替代4. default V putIfAbsent(K key, V value)//若傳入的value和map中key對(duì)應(yīng)的value相等,則刪除,返回true,否者,返回false5. default boolean remove(Object key, Object value) //oldValue和Map中key對(duì)應(yīng)的value相等,或者M(jìn)ap不包含key,則返回false,否則想key,newValue存放進(jìn)Map6. default boolean replace(K key, V oldValue, V newValue)oldValue和Map中key對(duì)應(yīng)的value相等,或者M(jìn)ap不包含key,則返回false,否則想key,newValue替換進(jìn)Map7. 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()方法的用法詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. php測(cè)試程序運(yùn)行速度和頁(yè)面執(zhí)行速度的代碼2. 解決python腳本中error: unrecognized arguments: True錯(cuò)誤3. Nginx+php配置文件及原理解析4. 八種Vue組件間通訊方式合集(推薦)5. 解決Python 進(jìn)程池Pool中一些坑6. ajax請(qǐng)求添加自定義header參數(shù)代碼7. php網(wǎng)絡(luò)安全中命令執(zhí)行漏洞的產(chǎn)生及本質(zhì)探究8. 無(wú)線標(biāo)記語(yǔ)言(WML)基礎(chǔ)之WMLScript 基礎(chǔ)第1/2頁(yè)9. PHP8.0新功能之Match表達(dá)式的使用10. Android實(shí)現(xiàn)觸發(fā)html頁(yè)面的Button控件點(diǎn)擊事件方式
