Map三种遍历方式
程序员文章站
2022-03-19 15:32:08
Map集合遍历的三种方法1.“键找值”的方法遍历:先获取map集合的全部键,再根据遍历的键找值public class MapDemo02 { public static void main(String[] args){ Map maps = new HashMap<>(); maps.put("电脑",1); maps.put("鼠标",3); maps.put("键盘",...
Map集合遍历的三种方法
1.“键找值”的方法遍历:先获取map集合的全部键,再根据遍历的键找值
public class MapDemo02 {
public static void main(String[] args){
Map<String,Integer> maps = new HashMap<>();
maps.put("电脑",1);
maps.put("鼠标",3);
maps.put("键盘",5);
maps.put("凳子",11);
System.out.println(maps);
// 1.“键找值”的方法遍历:先获取map集合的全部键,再根据遍历的键找值
//a.提取Map集合全部的键
Set<String> keys = maps.keySet();
System.out.println(keys);
//b.遍历键提取对应的值
for (String key : keys) {
Integer value = maps.get(key);
System.out.println(key+"==>"+value);
}
}
2.“键值对”的方法遍历:难度大。
public class MapDemo02 {
public static void main(String[] args){
Map<String,Integer> maps = new HashMap<>();
maps.put("电脑",1);
maps.put("鼠标",3);
maps.put("键盘",5);
maps.put("凳子",11);
System.out.println(maps);
//“键值对”的方法遍历:
/*
1.一开始Map集合想通过foreach来直接遍历。但是发现Map集合的键值对元素
直接是没有数据类型的
2.把Map集合转换成一个Set集合:set<Map.Entry<K,V>> entrySet();
Set<Map.Entry<String,Integer>> entries = maps.entrySet();
例子:maps = {huawei=1000, 手表=10, 生活用品=10, iphoneX=100, 娃娃=30}
↓
entries = [(huawei=1000) , (手表=10) , (生活用品=10) , (iphoneX=100) , (娃娃=30)]
entry 此时键值对作为了一个整体对象就有了类型对象,类型是Map的实体类型
(Map.Entry<String,Integer>)
*/
//a.把Map集合转换成一个Set集合
Set<Map.Entry<String,Integer>> entries = maps.entrySet();
//遍历Set集合此时元素就有了类型,类型是Map.Entry<String,Integer>
for (Map.Entry<String, Integer> entry : entries) {
System.out.println(entry);
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key+"===>"+value);
}
}
}
3.JDK1.8开始之后的新技术:Lanbda表达式
//3.JDK1.8开始之后的新技术:Lanbda表达式
maps.forEach((k,v) -> {
System.out.println(k +"==>"+ v);
});
本文地址:https://blog.csdn.net/weixin_42440011/article/details/111926530