![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HashMap源码
超大仙在努力
热爱技术,拥抱变化
展开
-
HashMap源码解析(四) removeNode方法
final HashMap.Node<K, V> removeNode(int hash, Object key, Object value, boolean matchValue, boolean movable) { //获取临时变量tab存储table数组 HashMap.Node[] tab; HashMap.Node p; ...原创 2020-03-24 11:45:33 · 389 阅读 · 0 评论 -
HashMap源码解读(三) putMapEntries方法
/** * 该函数用于将一个map赋值给新的HashMap * @param m 传入的map集合 * @param evict */ final void putMapEntries(Map<? extends K, ? extends V> m, boolean evict) { //获取传入的map集合的大小 ...原创 2020-03-24 11:30:33 · 781 阅读 · 0 评论 -
HashMap源码解读(二) putVal方法
/** * * @param key 需要存入数组中的元素键 * @param value 需要存入数组中的元素值 * @return 返回被存入的元素值 */ public V put(K key, V value) { return this.putVal(hash(key), key, value, false, t...原创 2020-03-24 11:29:01 · 219 阅读 · 0 评论 -
HashMap源码解读(一) getNode方法
/** * 该函数用于获取指定key的value * @param key 传入的key * @return 返回查找到的value对象,查找到则返回对象,没有则返回空 */ public V get(Object key) { HashMap.Node e; return (e = this.getNode(has...原创 2020-03-24 11:27:24 · 1781 阅读 · 0 评论