entrySet()详解及四种遍历map的方式

   2024-11-05 4280
核心提示:entrySet()方法是Map接口中的一个方法,它会返回一个Set集合,这个集合中的元素是Map.Entry类型的对象,每个Map.Entry对象代表一

entrySet()方法是Map接口中的一个方法,它会返回一个Set集合,这个集合中的元素是Map.Entry类型的对象,每个Map.Entry对象代表一个键值对。

Map.Entry是一个内部接口,它定义了getKey()和getValue()方法,分别用于获取键和值。

使用entrySet()方法可以方便地遍历Map集合中的键值对。

以下是四种常见的遍历Map集合的方式:

使用Iterator遍历:
Map<String, Integer> map = new HashMap<>();// 添加键值对map.put("A", 1);map.put("B", 2);map.put("C", 3);// 使用entrySet()获取键值对的Set集合Set<Map.Entry<String, Integer>> entrySet = map.entrySet();// 使用Iterator遍历entrySet集合Iterator<Map.Entry<String, Integer>> iterator = entrySet.iterator();while(iterator.hasNext()){   Map.Entry<String, Integer> entry = iterator.next();   String key = entry.getKey();   Integer value = entry.getValue();   // do something with key and value}
使用增强for循环遍历:
Map<String, Integer> map = new HashMap<>();// 添加键值对map.put("A", 1);map.put("B", 2);map.put("C", 3);// 使用entrySet()获取键值对的Set集合Set<Map.Entry<String, Integer>> entrySet = map.entrySet();// 使用增强for循环遍历entrySet集合for(Map.Entry<String, Integer> entry : entrySet){   String key = entry.getKey();   Integer value = entry.getValue();   // do something with key and value}
使用Lambda表达式遍历:
Map<String, Integer> map = new HashMap<>();// 添加键值对map.put("A", 1);map.put("B", 2);map.put("C", 3);// 使用entrySet()获取键值对的Set集合Set<Map.Entry<String, Integer>> entrySet = map.entrySet();// 使用Lambda表达式遍历entrySet集合entrySet.forEach((entry) -> {   String key = entry.getKey();   Integer value = entry.getValue();   // do something with key and value});
使用Stream API遍历:
Map<String, Integer> map = new HashMap<>();// 添加键值对map.put("A", 1);map.put("B", 2);map.put("C", 3);// 使用entrySet()获取键值对的Set集合Set<Map.Entry<String, Integer>> entrySet = map.entrySet();// 使用Stream API遍历entrySet集合entrySet.stream().forEach((entry) -> {   String key = entry.getKey();   Integer value = entry.getValue();   // do something with key and value});

这四种方式都可以用于遍历Map集合中的键值对,根据实际情况选择合适的方式即可。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号