
Java SE
☞十一
小z要发光
展开
-
HashMap源码 之 put() 相关方法
HashMap 源码 之 put() 相关方法 一、HashMap 的 put() 方法流程: put(key, value) 中直接调用了内部的 putVal() 方法,并且先对 key 进行了 hash 操作; putVal() 方法中,先检查 HashMap 数据结构中的索引数组表是否位空,如果是的话则进行一次 resize 操作; 以 HashMap 索引数组表的长度减一与key的hash值进行与运算,得出在数组中的索引,如果索引指定的位置值为空,则新建一个 k-v 的新节点; 如果不满足的3的条原创 2020-11-25 10:26:54 · 347 阅读 · 0 评论 -
HashMap源码 之 get() 相关方法
1、get() 方法 public V get(Object key) { Node<K,V> e; return (e = getNode(hash(key), key)) == null ? null : e.value; //实际调用的是 getNode(int hash, Object key) 方法 } 2、getNode() 方法 /** * Implements Map.get and rel原创 2020-11-25 09:48:54 · 152 阅读 · 0 评论