阅读 78

Map的4种遍历方法

Map的遍历方法

1.直接使用for循环

Map<Integer, String> map = new HashMap<>();
for (int i= 1;i<=5;i++){
    map.put(i,"第"+i);
}
//1.第一种遍历
Set<Map.Entry<Integer, String>> entries = map.entrySet();
for (Map.Entry<Integer, String> itemMap: map.entrySet()) {
    Integer key = itemMap.getKey();
    String value = itemMap.getValue();
    System.out.println(key +"----"+value);
}复制代码

image.png

通过map.entrySet()我们可以知道返回的对象,我们对这个集合对象进行遍历,用getKey取出他的键 用getValue取出他的值。(我在开发中会倾向于使用这种遍历方法)

2.使用iterator 迭代器

Iterator<Map.Entry<Integer, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
    Map.Entry<Integer, String> item = iterator.next();
    Integer key = item.getKey();
    String value = item.getValue();
    System.out.println(key +"----"+value);
}复制代码

image.png通过代码可以看出,他在map.entrySet()取出集合后有调用了iterator()生成一个集合 再通过迭代器中的方法进行循环,再循环中取出数据

3.遍历map的键 根据键的值取出value值

Set<Integer> keyList = map.keySet();
for (int item : keyList) {
    String value = map.get(item);
    System.out.println(item +"----"+value);
}复制代码

image.png通过代码可以看出,使用map.keySet()查询出所有键的集合,遍历循环集合再取出值

4.既然可以遍历键 则就可以遍历值

Collection<String> values = map.values();
for (String value : values) {
    System.out.println(value);
}复制代码

image.png通过上面得方法 可以调用values方法获取值得集合,但是这个得局限性就是不能根据值获取键 因此,这个用的也不是很多,他又一定得局限性

如果你需要同时获取键和值,则使用前面三种遍历方式,再其中三种遍历方式种,推荐使用第一种 使用for循环进行遍历。


作者:又菜又想玩的XXX
链接:https://juejin.cn/post/7020988014088159246


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐