阅读量:2
Map是一种键值对的集合,其中每个键都是唯一的。在Java中,Map接口有四种遍历方式:
- 使用EntrySet遍历:通过遍历Map中的Entry对象来实现遍历。Entry对象表示Map中的每个键值对。
Map<String, Integer> map = new HashMap<>(); // 添加键值对 map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); // 使用EntrySet遍历 for (Map.Entry<String, Integer> entry : map.entrySet()) { String key = entry.getKey(); Integer value = entry.getValue(); System.out.println(key + " = " + value); }
这种遍历方式适用于需要同时获取键和值的情况。
- 使用KeySet遍历:通过遍历Map中的键集合来实现遍历。
Map<String, Integer> map = new HashMap<>(); // 添加键值对 map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); // 使用KeySet遍历 for (String key : map.keySet()) { Integer value = map.get(key); System.out.println(key + " = " + value); }
这种遍历方式适用于只需要获取键的情况。
- 使用Values遍历:通过遍历Map中的值集合来实现遍历。
Map<String, Integer> map = new HashMap<>(); // 添加键值对 map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); // 使用Values遍历 for (Integer value : map.values()) { System.out.println(value); }
这种遍历方式适用于只需要获取值的情况。
- 使用Java 8的forEach遍历:通过Map的forEach方法结合Lambda表达式来实现遍历。
Map<String, Integer> map = new HashMap<>(); // 添加键值对 map.put("apple", 1); map.put("banana", 2); map.put("orange", 3); // 使用forEach遍历 map.forEach((key, value) -> System.out.println(key + " = " + value));
这种遍历方式是Java 8中新增的,简洁且灵活。
以上是Map的四种遍历方式,根据不同的需求可以选择适合的方式进行遍历。