遍历Map常用entrySet获取键值对,适合同时访问键和值;2. keySet用于遍历键并通过get获取值;3. values仅遍历值;4. Iterator支持遍历时安全删除。推荐默认使用entrySet,性能更优。

在Java中遍历Map集合有多种方式,常用的方法取决于你的具体需求,比如只需要键、只需要值,还是需要键值对。以下是几种常见的遍历方法。
这是最常见的方式,通过Map.entrySet()获取包含Map.Entry对象的Set集合,然后进行遍历。
适用于需要同时访问键和值的场景。
Map<String, Integer> map = new HashMap<>();
立即学习“Java免费学习笔记(深入)”;
map.put("a", 1);
map.put("b", 2);
for (Map.Entry<String, Integer> entry : map.entrySet()) {
System.out.println("键: " + entry.getKey() + ", 值: " + entry.getValue());
}
通过Map.keySet()获取所有键的Set集合,再遍历键,并可通过get(key)获取对应值。
适合只关心键,或需要根据键做额外处理的情况。
for (String key : map.keySet()) {
System.out.println("键: " + key + ", 值: " + map.get(key));
}
如果只关注值,可以使用Map.values()方法获取Collection集合。
for (Integer value : map.values()) {
System.out.println("值: " + value);
}
当需要在遍历过程中安全地删除元素时,推荐使用Iterator。
Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
System.out.println("键: " + entry.getKey() + ", 值: " + entry.getValue());
if ("a".equals(entry.getKey())) {
iterator.remove(); // 安全删除
}
}
基本上就这些。选择哪种方式主要看你是要操作键、值还是键值对,以及是否需要在遍历中修改集合。entrySet方式性能较好,推荐作为默认选择。
以上就是如何在Java中遍历Map集合的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号