迭代 Map 的内容

地图提供的方法允许你将地图的键,值或键值对作为集合进行访问。你可以遍历这些集合。例如,给出以下地图:

Map<String, Integer> repMap = new HashMap<>();
repMap.put("Jon Skeet", 927_654);
repMap.put("BalusC", 708_826);
repMap.put("Darin Dimitrov", 715_567);

迭代地图键:

for (String key : repMap.keySet()) {
    System.out.println(key);
}

打印:

Darin Dimitrov
Jon Skeet
BalusC

keySet() 提供地图的键作为 SetSet 用作键不能包含重复值。迭代整个集合依次产生每个密钥。HashMaps 未订购,因此在此示例中,可以按任何顺序返回密钥。

迭代地图值:

for (Integer value : repMap.values()) {
    System.out.println(value);
}

打印:

715567
927654
708826

values() 返回图作为值 Collection 。迭代整个集合依次产生每个值。同样,可以按任何顺序返回值。

通过键和值一起迭代

for (Map.Entry<String, Integer> entry : repMap.entrySet()) {
    System.out.printf("%s = %d\n", entry.getKey(), entry.getValue());
}

打印:

Darin Dimitrov = 715567
Jon Skeet = 927654
BalusC = 708826

entrySet() 返回 Map.Entry 对象的集合。Map.Entry 可以访问每个条目的键和值。