一尘不染

如何有效地迭代 Java Map 中的每个条目?

javascript

如果我有一个Map用 Java实现接口的对象,并且我希望遍历其中包含的每一对,那么遍历映射的最有效方法是什么?

元素的顺序是否取决于我对接口的特定地图实现?


阅读 217

收藏
2022-01-12

共2个答案

一尘不染

Map<String, String> map = ...
for (Map.Entry<String, String> entry : map.entrySet()) {
    System.out.println(entry.getKey() + "/" + entry.getValue());
}

在 Java 10+ 上:

for (var entry : map.entrySet()) {
    System.out.println(entry.getKey() + "/" + entry.getValue());
}
2022-01-12
一尘不染

使用迭代器和泛型的示例:

Iterator<Map.Entry<String, String>> entries = myMap.entrySet().iterator();
while (entries.hasNext()) {
  Map.Entry<String, String> entry = entries.next();
  String key = entry.getKey();
  String value = entry.getValue();
  // ...
}
2022-01-12