0
点赞
收藏
分享

微信扫一扫

Map详解

花海书香 2022-04-23 阅读 53
java

Map详解

Map接口的实现类的特点[很实用]

  • Map集合用于保存具有映射关系的数据:Key-Value(双列元素)

  • Map中的 key 和 value 可以是任何引用类型的数据,会封装到HashMap$Node对象中

  • Map中的key不允许重复,原因和HashSet一样

  • Map中的value可以重复

  • Map中的key可以为null,value也可以为null,注意key只能有一个null,value可以有多个null

  • 常用String类作为Map的key

  • key 与 value 之间存在单向一对一的关系,即通过指定的 key 总能找到对应的 value

  • Map存放数据的key-value示意图,一对 k-v 是放在一个Node中的,又因为Node实现了 Entry 接口,有些书上也说一对 k-y 就是一个Entry



public class Demo01 {
    public static void main(String[] args) {
        Map map = new HashMap();
        map.put("no1","韩顺平");
        map.put("no2","周杰伦");

        System.out.println("map="+map);
    }
}

  • Map中的 key 和 value 可以是任何引用类型的数据,会封装到HashMap$Node对象中

  • 当有相同的 k 时,就等价于替换

public class Demo01 {
    public static void main(String[] args) {
        Map map = new HashMap();
        map.put("no1","韩顺平");
        map.put("no2","周杰伦");
        map.put("no1", "张三丰");

        System.out.println("map="+map);
    }
}

 

  • Map中的 value 可以重复

public class Demo01 {
    public static void main(String[] args) {
        Map map = new HashMap();
        map.put("no1","韩顺平");
        map.put("no2","周杰伦");
        map.put("no1", "张三丰");
        map.put("no3", "张三丰");
        
        System.out.println("map="+map);
    }
}

 

  • key只能有一个null,value可以有多个null

public class Demo01 {
    public static void main(String[] args) {
        Map map = new HashMap();
        map.put(null,null);
        map.put(null, "abc"); //相当于替换
        map.put("no2", null);
        map.put("no3", null);
        
        System.out.println("map="+map);
    }
}

 

  • 通过 get() 方法,传入 key ,会返回对应的 value

public class Demo01 {
    public static void main(String[] args) {
        Map map = new HashMap();
        map.put("no1","韩顺平");
        map.put("no2","周杰伦");
        map.put("no1", "张三丰");
        map.put("no3", "张三丰");

        System.out.println(map.get("no2"));
    }
}

 

举报

相关推荐

Golang map 详解

map()方法详解

Scala Map详解

Map.entry详解

Go语言Map详解

Java中Map详解

0 条评论