集合框架Map的常见使用及循环的五中方式

Map集合是什么?

Map集合是一种以键值对形式存储和操作数据的数据结构,建立了key-value之间的映射关系,常用于存储和处理复杂的数据

Map集合的主要特点:
  • Map和List不同,Map是一种双列集合;

  • Map存储的是key-value的映射关系;

  • Map不保证顺序。在遍历时,遍历的顺序不一定是put()时放入的key的顺序,也不一定是key的排序顺序;

常用方法:

Map集合的使用和其他集合类似,主要包括添加、删除、获取、遍历元素等操作

方法名描述
clear()删除map中所有键值对
isEmpty()判断map是否为空
size()计算map中键值对的数量
put()将键值对添加到map中
remove()删除map指定的键值对
get()获取指定key对应value
keySet()返回map所有的key键
values()返回map所有的values值
replace()替换map中指定的key对应的values
使用方法:

1,put():Map 中添加一个键值对

 //如果添加的 key 已经存在,则会覆盖原来的 value 值
        Map<String, Integer> map = new HashMap<>();
        map.put("a", 1);
        map.put("b", 2);
        map.put("a", 111);
        System.out.println(map); // 输出 {a=111, b=2}

输出结果

{a=111, b=2}

由于 key 值的重复,第二次 put 操作将会覆盖掉原来的值,最终输出结果为 {a=111, b=2}

       

2,get():get 方法用于获取指定 key 对应的 value 值

        map.put("a", 1);
        map.put("b", 2);
        int value = map.get("a");
        System.out.println( value); // 输出 1

输出结果

1

我们通过 get 方法获取了 key 为 "a" 的 value 值,并输出结果为 1

3,remove():remove 方法用于删除指定 key 对应的键值对

        map.put("a", 1);
        map.put("b", 2);
        System.out.println(map); // 输出 {a=1, b=2}
        map.remove("a");
        System.out.println(map); // 输出 {b=2}

输出结果

{a=1, b=2}
{b=2}

通过 remove 方法删除了 key 为 "a" 的键值对,并将结果输出为 {b=2}。注意,如果 key 不存在,则 remove 方法不会产生任何影响

4. containsKey 和 containsValue

containsKey 和 containsValue 方法分别用于判断 Map 中是否包含指定的 key 或 value 值

map.put("a", 1);
map.put("b", 2);
boolean hasA = map.containsKey("a");
boolean hasC = map.containsKey("c");
boolean hasValue2 = map.containsValue(2);
boolean hasValue3 = map.containsValue(3);
System.out.println(hasA); // 输出 true
System.out.println(hasC); // 输出 false
System.out.println(hasValue2); // 输出 true
System.out.println(hasValue3); // 输出 false

输出结果

true
false
true
false

Map 中添加了两个键值对,然后分别使用 containsKey 和 containsValue 方法来判断是否包含指定的 key 或 value 值,并将结果输出

5,clear():clear 方法用于清空 Map 中所有的键值对

map.put("a", 1);
map.put("b", 2);
System.out.println(map); // 输出 {a=1, b=2}
map.clear();
System.out.println(map); // 输出 {}

使用 clear 方法清空了 Map 中所有的键值对,并将其输出为空集合

循环方法

Map提供了很多不同的循环方式,可根据需求选择不同的方式,以下列举了五种常见的循环方式:

首先创建一个map集合
         //创建一个map集合     
         Map<String,String> map=new HashMap<>();

        //新增键值对
        map.put("呼保义","宋江");
        map.put("玉麒麟","卢俊义");
        map.put("智多星","吴用");
        map.put("入云龙","公孙胜");

1,使用keySet循环

  //第一种keySet
        Set te = map.keySet();//获取所有值
        for (Object key : te) {
//            System.out.println("键:" + key);
            Object va = map.get(key);
            System.out.println("键:" + key + "\t值:" + va);
        }

2,使用entrySet遍历

   System.out.println("方法2 entrySet");
        //第二种entrySet
        Set Keset = map.entrySet();
        for (Object ob : Keset) {
            Map.Entry entry = (Map.Entry) ob;
            Object key = entry.getKey();//键
            Object values = entry.getValue();//值
            System.out.println(key + "===" + values);
        }

3,使用values获取集合(没有值)

      System.out.println("方法3 通过values获取集合(没有值)");
        //第三种通过values获取集合(没有值)
        Collection com = map.values();
        for (Object oo : com) {
            System.out.println(oo);
        }

4,Iterator迭代器方式

        System.out.println("方法4 迭代器方式");
        Iterator iterator=map.keySet().iterator();
        while (iterator.hasNext()){
            Object next = iterator.next();
            Object o = map.get(next);
            System.out.println("key:"+next+"\tvalues:"+o);
        }

5,Lamdba表达式

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

总结不易,点个小攒攒在走把~~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值