Map的5種遍歷方式
阿新 • • 發佈:2022-03-01
Map的5種遍歷方式
Map<String, String> map = new HashMap<String, String>(); map.put("bors", "博士"); map.put("bear2", "熊二");
1.entrySet遍歷(牆裂推薦!!!)
for (Map.Entry<String, String> entry : map.entrySet()) { String k = entry.getKey(); String v = entry.getValue(); System.out.println(k + " : " + v); }
2.在for迴圈中遍歷key或者value,一般適用於只需要map中的key或者value時使用,在效能上比使用entrySet較好
//key for (String key : map.keySet()) { System.out.println(key); } //value for (String value : map.values()) { System.out.println(value); }
3.通過Iterator遍歷
Iterator<Map.Entry<String, String>> entries = map.entrySet().iterator(); while (entries.hasNext()) { Map.Entry<String, String> entry = entries.next(); String key = entry.getKey(); String value = entry.getValue(); System.out.println(key + " : " + value); }
4.通過鍵找值遍歷,這種方式的效率比較低,因為本身從鍵取值是耗時的操作
for (String key : map.keySet()) { String value = map.get(key); System.out.println(key + " : " + value); }
5.java8 Lambda, 效能低於entrySet,所以更推薦用entrySet的方式
map.forEach((k, v) -> { System.out.println(k + " : " + v); });
轉自:https://www.cnblogs.com/bors/p/map.html