彻底搞懂HashMap
文章平均质量分 94
极其详细的 HashMap 源码解析专栏
*Soo_Young*
这个作者很懒,什么都没留下…
展开
-
LinkedHashMap 是如何保证返回的顺序性的?
读到这里其实就可以大致了解到 LinkedHashMap 的机制,就是将 HashMap 中的 Node 节点替换为了类中的 Entry,新增了 before 和 after 节点来创造出一个依据顺序连接的双向链表,由此来达到存储插入顺序的目的。首先获取了此时的 last 节点,也就是链表的最后一个元素,然后做了一个判断,如果 last 是空的,就说明此时数组中没有元素,是第一次添加,此时就将 head 也置为 p 节点,否则就将 p 与 last 节点双向连接。原创 2024-04-10 10:57:44 · 1209 阅读 · 2 评论 -
万字源码解析!彻底搞懂 HashMap【二】:putVal 方法和 resize 方法(重点)
面试题引入:什么重写equals()方法的同时需要重写hashCode()方法?HashMap 的初始化大小为什么是 16?说一下 HashMap 的扩容。原创 2024-04-09 13:36:18 · 1220 阅读 · 0 评论 -
万字源码解析!彻底搞懂 HashMap【一】:概念辨析与构造方法源码解析
这里指定的是默认的负载因子的值,为 0.75,负载因子(Load Factor)是指哈希表中已存储元素数量与哈希表容量的比例。在哈希表中,负载因子用于衡量哈希表的填充程度,即已存储元素占哈希表容量的比例。通常情况下,负载因子是一个介于 0 到 1 之间的数值,在哈希表中,当负载因子达到一定阈值时,通常会触发哈希表的扩容操作,以保持哈希表的性能。常见的默认负载因子值为 0.75,这是一个经验值,可以在平衡内存占用和性能之间做出权衡。原创 2024-04-08 14:35:21 · 768 阅读 · 0 评论