在Java有多种Java遍历Map的方式,下面我就重点来详解常见的Java遍历Map的方式@mikechen
1.使用for-each循环遍历Map
这种方式是最简单的一种方式,也是最常用的一种方式,如下所示:
Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); for (Map.Entry<String, Integer> entry : map.entrySet()) { String key = entry.getKey(); Integer value = entry.getValue(); System.out.println(key + " -> " + value); }
通过for-each循环,可以依次获取Map中的每一个键值对。
2.使用Iterator迭代器遍历Map
这种方式也比较常用,通过Iterator迭代器,如下所示:
Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry<String, Integer> entry = iterator.next(); String key = entry.getKey(); Integer value = entry.getValue(); System.out.println(key + " -> " + value); }
3.遍历Map中的键或值
有时候,我们只需要遍历Map中的键或值,而不需要同时获取键值对,这种情况下可以使用Map的keySet()方法或values()方法。
如下所示:
Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); // 遍历键 for (String key : map.keySet()) { System.out.println(key); } // 遍历值 for (Integer value : map.values()) { System.out.println(value); }
Map的keySet()方法或values(),分别获取Map中的键集合或值集合,然后通过for-each循环或Iterator迭代器进行遍历。
上述三种方法都可以实现Java遍历Map,更多Java集合,请查看:Java集合(万字图文全面详解)
mikechen睿哥
mikechen睿哥,十余年BAT架构经验,资深技术专家,就职于阿里、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》