后端岗位面试题更新 2026-08-05

自定义类能否作为 HashMap 的 key?如果可以,需要注意哪些规则?

4399游戏后端开发游戏风险判断技术原理Java

考察说明

考察自定义对象作为 Map 键的 hashCode 与 equals 协议及不可变性

回答思路

  1. 明确可以,并说明必须正确重写 hashCode 和 equals
  2. 强调二者契约一致:equals 相等则 hashCode 必须相等
  3. 说明 key 应尽可能不可变,避免哈希冲突或查找失败
  4. 举例说明违反规则导致 get 返回 null 或性能退化
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。