请描述 HashMap 的存储与读取过程、触发扩容的情形以及扩容的具体流程。
考察说明
考察对 HashMap 内部实现机制的深入理解,包括哈希冲突处理、扩容触发条件和扩容细节
回答思路
- 能清晰说明 put 与 get 的核心流程,包括哈希计算、indexFor/扰动函数和链表/红黑树处理
- 准确说出扩容触发条件(如负载因子、容量阈值)和扩容后容量变化(翻倍)
- 讲解扩容时旧数组元素迁移的过程,说明链表或红黑树的重哈希处理
- 注意提及多线程扩容下可能出现的问题(如死循环)作为进阶加分点
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。