java中HashMap遍历详解
生活随笔
收集整理的這篇文章主要介紹了
java中HashMap遍历详解
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
首先新建一個map集合:
Map<String, Object> map = new HashMap<String, Object>();map.put("name","張三");map.put("age",18);map.put("address","陜西省西安市");接下來了解概念:
Entry:由于map中存放的元素均為鍵值對,沒辦法通過for循環(huán)進(jìn)行遍歷,只能把key、value當(dāng)成一條數(shù)據(jù),方可遍歷; map中存在一個類叫:Entry,可以保存這種映射數(shù)據(jù),相當(dāng)于每一個鍵值對就是一個Entry,通過遍歷Entry就可以遍歷出map。 entrySet():entrySet()實(shí)現(xiàn)了Set接口,可以將map集合轉(zhuǎn)換為set集合,并且以Entry類形式進(jìn)行保存。 Set<Map.Entry<String, Object>> entries = map.entrySet();for (Map.Entry<String, Object> mapkeyvalue:entries) {System.out.println(mapkeyvalue.getKey());System.out.println(mapkeyvalue.getValue());} keySet():entrySet()實(shí)現(xiàn)了Set接口,可以將map集合中的key轉(zhuǎn)換為set集合。 Set<String> set =map.keySet();for (String key: set) {System.out.println(key);System.out.println(map.get(key));}以上兩種方法便可以實(shí)現(xiàn)map的遍歷,以及遍歷的邏輯。
下面是四種遍歷方法:
//第一種:普遍使用,二次取值System.out.println("通過Map.keySet遍歷key和value:");for (String key : map.keySet()) {System.out.println("key= "+ key + " and value= " + map.get(key));}//第二種System.out.println("通過Map.entrySet使用iterator遍歷key和value:");Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, String> entry = it.next();System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());}//第三種:推薦,尤其是容量大時System.out.println("通過Map.entrySet遍歷key和value");for (Map.Entry<String, String> entry : map.entrySet()) {System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());}//第四種System.out.println("通過Map.values()遍歷所有的value,但不能遍歷key");for (String v : map.values()) {System.out.println("value= " + v);}推薦使用第三種,這樣就較好理解力map遍歷的邏輯。
總結(jié)
以上是生活随笔為你收集整理的java中HashMap遍历详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win11右键菜单变换Win10风格
- 下一篇: CDH 组件升级:zookeeper升级