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

哪些集合无序、可重复?往HashSet中放入两个相等的对象时,集合中保留的是第一个还是第二个?如何证明?

数字马力(杭州)信息技术有限公司后端开发互联网/IT问题拆解技术原理Java

考察说明

考察Java集合框架中HashSet的存储特性及元素相等性判断机制

回答思路

  1. 准确指出无序且可重复的集合类型(如List、ArrayList、LinkedList)
  2. 说明HashSet基于HashMap实现,底层使用HashMap的key存储元素,不支持重复
  3. 解释HashSet添加元素时通过hashCode和equals方法判断是否已存在,若存在则新元素覆盖旧元素(实际是HashMap的put方法覆盖返回旧值)
  4. 给出通过遍历HashSet或使用迭代器验证存储元素内容的证明方法
  5. 能解释为什么HashSet不能区分先后顺序,但能通过元素引用或对象属性证明最终存储的是哪个