请解释 HashMap 的底层数据结构、put 和 get 的流程,以及为什么重写 equals 时必须重写 hashCode?
考察说明
考察对 HashMap 底层原理、哈希冲突处理与 equals/hashCode 约定的理解
回答思路
- 能说明数组加链表/红黑树的结构及转换条件
- 能描述 put 流程:计算哈希、定位桶、处理冲突、扩容
- 能说明 get 流程与哈希寻址
- 能解释 equals 相等时 hashCode 必须相等的约定及违背后果
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。