HashMap有几种遍历方法(推荐使用哪种?)
本文已收录《面试精选》系列,Gitee 开源地址:https://gitee.com/mydb/interviewHashMap 的遍历方法有很多种,不同的 JDK 版本有不同的写法,其中 JDK 8 就提供了 3 种 HashMap 的遍历方法,并且一举打破了之前遍历方法“很臃肿”的尴尬。
1.JDK 8 之前的遍历 JDK 8 之前主要使用 EntrySet 和 KeySet 进行遍历,具体实现代码如下。
1.1 EntrySet 遍历
EntrySet 是早期 HashMap 遍历的主要方法,其实现代码如下:
public static void main(String[] args) {
// 创建并赋值 hashmap
HashMap map = new HashMap() {{
put("Java", " Java Value.");
put("MySQL", " MySQL Value.");
put("Redis", " Redis Value.");
}};
// 循环遍历
for (Map.Entry entry : map.entrySet()) {
System.out.println(entry.getKey() + ":" + entry.getValue());
}
}
以上程序的执行结果,如下图所示:
以上程序的执行结果,如下图所示:
iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry entry = iterator.next(); System.out.println(entry.getKey() + ":" + entry.getValue()); } }
以上程序的执行结果,如下图所示:
以上程序的执行结果,如下图所示:
以上程序的执行结果,如下图所示:
iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry entry = iterator.next(); if ("Java".equals(entry.getKey())) { // 删除此项 iterator.remove(); continue; } System.out.println(entry.getKey() + ":" + entry.getValue()); } }
以上程序的执行结果,如下图所示:
{ System.out.println(key + ":" + value); }); }
以上程序的执行结果,如下图所示:
{ System.out.println(entry.getKey() + ":" + entry.getValue()); }); }
以上程序的执行结果,如下图所示:
{ System.out.println(entry.getKey() + ":" + entry.getValue()); }); }
以上程序的执行结果,如下图所示:
推荐阅读
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 尽力
- 死结。
- 《跨界歌手》:亲情永远比爱情更有泪点
- 时间老了
- 深入理解Go之generate
- 午门传说
- 【译】20个更有效地使用谷歌搜索的技巧
- 七律.岭南骨科康复联谊有感
- 你有婚内虐待行为吗()