全站年SVIP
全站1000+试题无限查看
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); }
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); }
通过代码可以看出,他在map.entrySet()取出集合后有调用了iterator()生成一个集合 再通过迭代器中的方法进行循环,再循环中取出数据
Set<Integer> keyList = map.keySet(); for (int item : keyList) { String value = map.get(item); System.out.println(item +"----"+value); }
通过代码可以看出,使用map.keySet()查询出所有键的集合,遍历循环集合再取出值
Collection<String> values = map.values(); for (String value : values) { System.out.println(value); } 复制代码
通过上面得方法 可以调用values方法获取值得集合,但是这个得局限性就是不能根据值获取键 因此,这个用的也不是很多,他又一定得局限性
如果你需要同时获取键和值,则使用前面三种遍历方式,再其中三种遍历方式种,推荐使用第一种 使用for循环进行遍历。
走过路过不要错过的Map的4种遍历方法
1.直接使用for循环
2.使用iterator 迭代器
通过代码可以看出,他在map.entrySet()取出集合后有调用了iterator()生成一个集合 再通过迭代器中的方法进行循环,再循环中取出数据
3.遍历map的键 根据键的值取出value值
通过代码可以看出,使用map.keySet()查询出所有键的集合,遍历循环集合再取出值
4.既然可以遍历键 则就可以遍历值
通过上面得方法 可以调用values方法获取值得集合,但是这个得局限性就是不能根据值获取键 因此,这个用的也不是很多,他又一定得局限性
如果你需要同时获取键和值,则使用前面三种遍历方式,再其中三种遍历方式种,推荐使用第一种 使用for循环进行遍历。