JavaSE(2)13 集合--Map集合

集合

Map集合

概述和使用
  • interface Map<K,V> K:键的类型;V:值的类型
  • 将键映射到值的对象,不能包含重复的键,每个键可以映射到最多一个值
  //通过多态创建Map对象
    public static void main(String[] args) {
        //创建集合对象
        Map<Integer,String> map=new HashMap<>();
        //集合中添加元素
        map.put(1,"zs");
        map.put(1,"ls");//存数据出现键重复时就把原来该键对应的值替换掉
        map.put(2,"");
        map.put(3,null);
        System.out.println(map);//{1=ls, 2=, 3=null}
    }
Map集合的基本功能

在这里插入图片描述

//Map集合的基本功能
public class Demo02 {
    public static void main(String[] args) {
        Map<String,String> map=new HashMap<>();
        //集合添加元素
        map.put("01","张三");
        map.put("02","李四");
        map.put("03","王五");
        map.put("04","小明");
        map.put("05","小红");
        System.out.println(map);
        System.out.println(map.size());
        //通过key移除元素
        String remove = map.remove("02");//5
        //如果要删除的key在集合中不存在怎返回null
        System.out.println(map.remove("aaa"));//null
        System.out.println(remove);//李四
        System.out.println(map);//{01=张三, 03=王五, 04=小明, 05=小红}
        //集合中是否包含某个键
        System.out.println(map.containsKey("04"));//true
        //集合中是否包含某个值
        System.out.println(map.containsValue("小明"));//true
        //清空集合
        map.clear();
        System.out.println(map);//{}
        boolean empty = map.isEmpty();//判断集合是否为空
        System.out.println(empty);//true
    }
}
Map集合的获取功能

在这里插入图片描述

public class Demo03 {
    //Map集合的获取功能
    public static void main(String[] args) {
        Map<String,String> map=new HashMap<>();
        map.put("num01","张三");
        map.put("num02","李四");
        map.put("num03","王五");
        map.put("num04","小红");
        System.out.println(map);//{num01=张三, num02=李四, num03=王五, num04=小红}
        //通过键获得值
        String num02 = map.get("num02");
        System.out.println(num02);//李四
        System.out.println(map.get("xd"));//null 当key不存在时返回null
        //获取所有键的集合keySet()
        System.out.println(map.keySet());//[num01, num02, num03, num04]
        Set<String> set= map.keySet();
        for (String str : set) {
            System.out.print(str+"\t");//num01	num02	num03	num04
        }
        System.out.println();
        //获取所有值的集合values()
        System.out.println(map.values());//[张三, 李四, 王五, 小红]
        Collection<String> collection=map.values();
        for (String str : collection) {
            System.out.print(str+"\t");//张三	李四	王五	小红
        }
    }
}
Map集合的遍历
//Map集合遍历方式一
    public static void main(String[] args) {
        Map<String,String> map=new HashMap<>();
        map.put("num01","张三");
        map.put("num02","李四");
        map.put("num03","王五");
        map.put("num04","小红");
        //获取所有键的集合
        Set<String> set=map.keySet();
        //遍历键的集合
        for (String s : set) {
            System.out.println(s+"="+map.get(s));//num01=张三 num02=李四 num03=王五 num04=小红
        }
    }
}
public class Demo05 {
    //Map集合遍历方式二
    public static void main(String[] args) {
        Map<String,String> map=new HashMap<>();
        map.put("num01","张三");
        map.put("num02","李四");
        map.put("num03","王五");
        map.put("num04","小红");
        //获取所有的键值对
        Set<Map.Entry<String, String>> entries = map.entrySet();
        //遍历键值对集合
        for (Map.Entry<String, String> entry : entries) {
            System.out.println(entry.getKey()+"="+entry.getValue());//num01=张三 num02=李四 num03=王五 num04=小红
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值