java map put返回值_HashMap的put方法返回值问题

本文详细解析了Java HashMap的put方法,包括其返回值的意义。当插入的键已存在时,put方法返回旧值并覆盖;新键插入则返回null。此外,还介绍了HashMap在键值对冲突时的处理方式,以及在达到一定阈值时如何转换为红黑树。
摘要由CSDN通过智能技术生成

API文档中的描述:

d29b357b5abf41be03cb9724f9af2880.png

先看一个例子

Map map = new HashMap();

System.out.println(map.put('a', 0)); //null

System.out.println(map.put('a', 1)); //0

System.out.println(map.put('a', 2)); //1

System.out.println(map.put('b', 1)); //null

System.out.println(map.put('b', 2)); //1

System.out.println(map.get('a')); //2

可以看出:put方法的返回值为null或value;

调用put方法时,如果已经存在一个相同的key, 则返回的是前一个key对应的value,同时该key的新value覆盖旧value;

如果是新的一个key,则返回的是null;

通过hashmap的源码可以看出:

map中一个映射不能包含重复的键。每个键最多只能映射一个值。即相同的key在Map中只会有一个与之关联的value存在。

put()方法实现:首先使用hash(key)得到key的hashcode(),hashmap根据获得的hashco

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值