Java map 優(yōu)雅的元素遍歷方式說明
Java 8 , Lambda + foreach 語法糖, 寫起來非常的 clean
public static void main(String[] args) { // map init Map<String, String> map = new HashMap<>(); map.put('k', 'v'); /*=====處理函數(shù)只有單條語句=====*/ map.forEach((k, v) -> System.out.println(k + v)); /*=====處理函數(shù)有多個(gè)步驟=======*/ map.forEach((k, v) -> { System.out.println(111); System.out.println(k + v); }); }
補(bǔ)充知識:java 遍歷Map 和 根據(jù)Map的值(value)取鍵(key)
看代碼吧~
public static void main(String[] args) {//Map<String, Object> map = new HashMap<String, Object>();Map<String, Object> map = new LinkedHashMap<String, Object>();map.put('username','zhaokuo');map.put('password', '123456');map.put('email', '[email protected]');map.put('sex', '男');//第一種 用for循環(huán)的方式for (Map.Entry<String, Object> m :map.entrySet()) {System.out.println(m.getKey()+'t'+m.getValue());}//利用迭代 (Iterator)Set set=map.entrySet();Iterator iterator=set.iterator();while(iterator.hasNext()){Map.Entry<String, Object> enter=(Entry<String, Object>) iterator.next();System.out.println(enter.getKey()+'t'+enter.getValue());}//利用KeySet 迭代Iterator it = map.keySet().iterator();while(it.hasNext()){ String key; String value; key=it.next().toString(); value=(String) map.get(key); System.out.println(key+'--'+value); }//利用EnterySet迭代Iterator i=map.entrySet().iterator(); System.out.println( map.entrySet().size()); String key; String value; while(i.hasNext()){ Map.Entry entry = (Map.Entry)i.next(); key=entry.getKey().toString(); value=entry.getValue().toString(); System.out.println(key+'===='+value); } System.out.println(getKeyByValue(map, 'zhaokuo'));}
//根據(jù)Value取Keypublic static String getKeyByValue(Map map, Object value) {String keys='';Iterator it = map.entrySet().iterator();while (it.hasNext()) {Map.Entry entry = (Entry) it.next();Object obj = entry.getValue();if (obj != null && obj.equals(value)) {keys=(String) entry.getKey();} }return keys;}
以上這篇Java map 優(yōu)雅的元素遍歷方式說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python 如何在 Matplotlib 中繪制垂直線2. bootstrap select2 動態(tài)從后臺Ajax動態(tài)獲取數(shù)據(jù)的代碼3. ASP常用日期格式化函數(shù) FormatDate()4. python中@contextmanager實(shí)例用法5. html中的form不提交(排除)某些input 原創(chuàng)6. CSS3中Transition屬性詳解以及示例分享7. js select支持手動輸入功能實(shí)現(xiàn)代碼8. 如何通過python實(shí)現(xiàn)IOU計(jì)算代碼實(shí)例9. 開發(fā)效率翻倍的Web API使用技巧10. vue使用moment如何將時(shí)間戳轉(zhuǎn)為標(biāo)準(zhǔn)日期時(shí)間格式
