【JAVASE】对于Map的特点

package Gather.CollectionArrayList.HashMap;

import java.util.HashMap;
import java.util.Map;

/**
 * @author 小王宝友
 * @version 3.89
 * JDK8.0Map接口特点
 * Map接口实现类的特点
 * 1、Map与Collection并列存在,用于保存具有映射关系的数据:Key-Value
 * 2、Map中的Key和Value可以是任何引用类型的数据,会封装在HashMap$Node对象中
 * 3、Map中的Key不允许重复,原因和HashSet一样
 * 4、Map中的Value可以重复
 * 5、Map的Key可以为null,value也可以为null,
 *      注意key为null,只能有一个,
 *      value为null,可以为多个
 * 6、常用String类作为Map的key
 * 7、key和value之间存在单项一对一关系,即通过指定的key中能找到对应的value
 * 8、Map存放数据的key-value示意图,一对k-v是放在一个Node中的
 *      有因为Node实现了Entry接口,有些书上也说一对k-v就是一个Entry
 *
 */
@SuppressWarnings({"all"})
public class MapFirst {
    public static void main(String[] args) {
        /*
            Map接口实现类的特点key-value是双列元素使用实现类hashmap
            1、Map与Collection是没有关系的
            2、添加顺序和取出顺序不一致


         */
        Map map = new HashMap();
        map.put("no1","张三");//K-V
        map.put("no2","李四");//K-V
        //会替换掉no1的value
        //当有相同的key时,就等价于替换
        map.put("no1","张三丰");
        //当key不同时,就可以放进去,value可重复
        //会新new一个Node,key是no3
        map.put("no3","张三丰");
        map.put(null,null);//k-v
        map.put(null,"abc");//等价于替换,null->abc
        //相当于一组新的k-v
        //value可以多组空
        map.put("no4",null);
        map.put("no5",null);
        System.out.println("map=" + map);
        //通过get方法传入一个key,会返回对应的value
        System.out.println(map.get("no2"));


    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值