put
HashMap的put方法在put key value的时候,首先比较key的hash值,然后在用equals比较内容,都相等的话,就会顶掉当前已经存在的key value,否则就会在最后加上这个key value
replace
而replace方法某些时候也可以达到顶掉key value的目的,但是有个前提就是当前的HashMap里必须存在能匹配到的这个key,也就是hash值和equals都相等的key
上一波jdk官方说明文档
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e7ea031d4b3e70e18d793fd04d855876.png)
然后再看看demo
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/0447a21e7b384f0fefb84b77a76db609.png)
源码
getNode方法就是获取这个key的节点,如果已经存在就替换值,否则就啥也不做
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8e7b109e892e884db3e471b48d5d06d8.png)