Java 中 Set 如何实现自定义去重,例如自定义类的特定属性相同即判定为重复?
考察说明
考察 hash 结构去重机制、equals 与 hashCode 的一致性及自定义实现
回答思路
- 说明 Set 基于 hashCode 与 equals 判断重复
- 指出自定义类必须重写 equals 和 hashCode 且保持一致性
- 说明使用 TreeSet 时需实现 Comparable 或提供 Comparator
- 举例说明按单一属性去重的实现方式
- 讨论重写时的规范性要求,如 equals 对称性与 hashCode 稳定规则
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。