方法1:在for-each循环中使用entries来遍历,键值都需要时使用(初始化的时候最好加上泛型)
- Map<String, Integer> map = new HashMap<String, Integer>();
- for (Map.Entry<String, Integer> entry : map.entrySet()) {
- System.out.println("Key ====== " + entry.getKey() + ", Value ======= " + entry.getValue());
-
- }
- }
- 注意:for-each循环时,map不能为空,否则会抛出NullPointerException异常。而且for-each只在Java5以上支持。
- Map<String, Integer> map = new HashMap<String, Integer>();
- //遍历map中的键
- for (String key : map.keySet()) {
- System.out.println("Key ========" + key);
- }
- //遍历map中的值
- for (Integervalue : map.values()) {
- System.out.println("Value ======== " + value);
- }
方法3:使用Iterator遍历
- Map<String , Integer> map = new HashMap<String , Integer>();
- Iterator<Map.Entry<String , Integer>> entries = map.entrySet().iterator();
- while (entries.hasNext()) {
- Map.Entry<String , Integer> entry = entries.next();
- System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
- }
方法4:通过键获取值遍历(效率低)
- Map<Integer, Integer> map = new HashMap<Integer, Integer>();
- for (Integer key : map.keySet()) {
- Integer value = map.get(key);
- System.out.println("Key = " + key + ", Value = " + value);
- }