Map遍历的四种方式
第一种
使用 for-each 循环遍历
@Test
public void test1() {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("张三", 22);
map.put("里斯", 25);
map.put("王五", 26);
// 第一种遍历 forEach遍历
map.forEach((k, v) -> System.out.println(k + "=" + v));
}
第二种
使用entrySet方法增强for循环遍历
@Test
public void test2() {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("张三", 22);
map.put("里斯", 25);
map.put("王五", 26);
// 第二种遍历
for(Map.Entry<String, Integer>entry:map.entrySet()) {
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key+"="+value);
}
}
第三种
使用entrySet迭代器遍历
@Test
public void test3() {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("张三", 22);
map.put("里斯", 25);
map.put("王五", 26);
// 第三种遍历
Iterator<Entry<String, Integer>> iterator = map.entrySet().iterator();
while(iterator.hasNext()) {
Entry<String, Integer> next = iterator.next();
String key = next.getKey();
Integer value = next.getValue();
System.out.println(key+"="+value);
}
}
第四种
通过键找值遍历
@Test
public void test4() {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("张三", 22);
map.put("里斯", 25);
map.put("王五", 26);
// 第四种遍历
map.keySet().forEach(a->System.out.println(a+"="+map.get(a)));
}