hashmap遍历方法有哪几种
HashMap的遍历方法有以下几种:
- 使用Iterator遍历:通过HashMap的keySet()或entrySet()方法获取键集合或键值对集合,然后使用Iterator迭代器进行遍历。
HashMap<String, Integer> map = new HashMap<>();
// 添加键值对到map
// 遍历键集合
Iterator<String> iterator = map.keySet().iterator();
while (iterator.hasNext()) {
String key = iterator.next();
// 根据key获取对应的值
Integer value = map.get(key);
// 进行其他操作
}
// 遍历键值对集合
Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
String key = entry.getKey();
Integer value = entry.getValue();
// 进行其他操作
}
- 使用foreach遍历键集合或键值对集合:
HashMap<String, Integer> map = new HashMap<>();
// 添加键值对到map
// 遍历键集合
for (String key : map.keySet()) {
// 根据key获取对应的值
Integer value = map.get(key);
// 进行其他操作
}
// 遍历键值对集合
for (Map.Entry<String, Integer> entry : map.entrySet()) {
String key = entry.getKey();
Integer value = entry.getValue();
// 进行其他操作
}
- 使用Java 8的Stream API遍历:
HashMap<String, Integer> map = new HashMap<>();
// 添加键值对到map
// 遍历键集合
map.keySet().stream().forEach(key -> {
// 根据key获取对应的值
Integer value = map.get(key);
// 进行其他操作
});
// 遍历键值对集合
map.entrySet().stream().forEach(entry -> {
String key = entry.getKey();
Integer value = entry.getValue();
// 进行其他操作
});
注意:在遍历过程中,使用Iterator或foreach进行删除操作时需要使用Iterator的remove()方法,否则会抛出ConcurrentModificationException异常。
版权声明
本文仅代表作者观点,不代表米安网络立场。
上一篇:java多个类怎么运行 下一篇:怎么用qt编译一个简单的程序
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。