Map集合的五种循环遍历方式

Hi i,m JinXiang


⭐ 前言 ⭐

本篇文章主要介绍Map集合的五种循环遍历方式以及部分理论知识


🍉欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁

🍉博主收将持续更新学习记录获,友友们有任何问题可以在评论区留言


目录

⭐什么是Map集合?

⭐为什么要使用Map集合?

⭐使用Map集合

⭐Map集合的五种循环遍历方式

1、使用foreach循环和keySet()方法来遍历Map中的元素

2、使用foreach循环和entrySet()方法来遍历Map中的元素

3、使用Lambda表达式来遍历Map中的元素

4、使用foreach循环和values直接获取值的集合来遍历Map中的元素

5、使用foreach循环和迭代器来遍历Map中的元素


⭐什么是Map集合?

Map是Java中的一个接口,它用于存储键-值对,并且键和值都可以是任意对象。它是Java集合框架中的一部分,并提供了一些方法来操作和访问Map中的元素。

Map中的每个键都是唯一的,这意味着不能使用相同的键插入新的键值对,而新的值将会覆盖旧的值。Map提供了许多方法来检查是否包含指定的键和值、获取键值对数量和遍历Map中的元素等。

⭐为什么要使用Map集合?

使用Map集合有以下几个优点:

1、快速查找和访问元素

使用Map的键来访问和查找值,可以快速定位元素,而不需要遍历整个集合。

2、存储关联数据

Map可以存储键值对,比如存储学生的姓名和成绩,可以通过学生的姓名快速获取到他的成绩。

3、高效的添加和删除元素

Map提供了添加、删除和修改元素的方法,操作比较高效,而且不需要对集合进行重排。

4、对于大量数据的处理,可以提高效率

如果需要处理大量的数据,使用Map可以比较快速地进行查找和访问,提高程序效率。

5、可以用于缓存数据

Map可以将数据缓存到内存中,通过键值对的形式进行访问,这样可以避免频繁地查询数据库或者文件系统,提高了程序效率。

使用Map集合可以提高程序的效率和可读性,而且可以方便地存储和访问关联数据

⭐使用Map集合

1、创建Map对象:可以通过实例化HashMap、TreeMap或者LinkedHashMap等具体实现类来创建Map对象。

//1、创建一个Mop集合
Map<String, Integer> map = new HashMap<>();

2、添加元素:可以使用put()方法向Map中添加元素。

//2、在集合中新增三个键值对
map.put("CN","中国");
map.put("NL","荷兰");
map.put("ES","西班牙");

3、获取元素:使用get()方法可以获取Map中的元素。

//3、获取到一个键值对
System.out.println(map.get("CN"));

4、遍历Map:使用foreach循环和keySet()方法来遍历Map中的元素。

//4.1 通过(键集合)获取值
    Set keySet =map.keySet(); //获取到所有值
    for(Object key : keySet ){
        System.out.println("键----:"+key);
        Object value = map.get(key);
        System.out.println(key+"-------"+value);
    }

5、删除元素:可以使用remove()方法删除Map中的元素。

map.remove("ES");

注意:键必须是唯一的,如果向Map中添加一个已经存在的键,那么之前的值会被新的值覆盖。注意空指针异常:当调用get()方法获取一个不存在的键时,会返回null。

⭐Map集合的五种循环遍历方式

1、使用foreach循环和keySet()方法来遍历Map中的元素

//4.1 通过(键集合)获取值
    Set keySet =map.keySet(); //获取到所有值
    for(Object key : keySet ){
        System.out.println("键----:"+key);
        Object value = map.get(key);
        System.out.println(key+"-------"+value);
    }

2、使用foreach循环和entrySet()方法来遍历Map中的元素

//4.2通过entrySet获取到(键值对集合)实体对象(entrySet)
Set entrys = map.entrySet();
for (Object entry :entrys){
    Map.Entry en =(Map.Entry) entry;
    System.out.println(en.getKey()+"-----"+en.getValue());
}

3、使用Lambda表达式来遍历Map中的元素

//Lambda表达式
map.forEach((k,v) ->{
    System.out.println(k+"====="+v);
    });

4、使用foreach循环和values直接获取值的集合来遍历Map中的元素

//方法4:通过values直接获取值的集合(缺点没有key)
Collection coll = map.values();
for (Object obj : coll){
    System.out.println(obj);
}

5、使用foreach循环和迭代器来遍历Map中的元素

//方法5:迭代器(其他方法可通用迭代器)
Set set = map.keySet();
Iterator iterator=set.iterator();
while (iterator.hasNext()){
    Object key = iterator.next();
    Object value = map.get(key);
    System.out.println(key+"="+value);
}

将键映射到值的对象。 地图不能包含重复的键; 每个键可以映射到最多一个值。

这个接口取代了Dictionary类,它是一个完全抽象的类而不是接口注意:如果使用可变对象作为地图键,必须非常小心。 如果对象的值以影响equals比较的方式更改,而对象是地图中的键,则不会指定地图的行为。 这个禁令的一个特殊情况是,地图不允许将自己包含在内。有关详细信息,请参阅博客 jdk_api_1.8-JAVA中文版API手册(免费版)-CSDN博客中提供的APL工具,查看各个实体文档和子类文档进行深入了解!

总结不易,希望uu们不要吝啬亲爱的👍哟(^U^)ノ~YO!!如有问题,欢迎评论区批评指正😁
 

  • 33
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值