海康威视面试题更新 2026-08-05

请解释 Java 中 hashCode()、equals() 与 == 运算符的区别与关联。

海康威视前端/移动开发编码实现技术原理Java

考察说明

考察对对象相等性判断机制、hashCode 契约及其与集合类协作的理解

回答思路

  1. 说明 == 比较引用是否指向同一对象,equals 默认比较引用但可重写以比较内容
  2. 说明 hashCode 与 equals 的契约:相等的对象必须具有相等的 hashCode
  3. 说明重写 equals 时必须重写 hashCode,否则在 HashMap、HashSet 中失效
  4. 结合存储场景说明 hashCode 用于定位桶、equals 用于冲突时精确比较
本题已收录答题指导

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

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