1.TreeSet子类是利用Comparable接口来实现重复元素的判断,但是Set集合的整体特征就是不允许保存重复元素。
2.HashSet判断元素重复是利用Object类中的方法实现的:
-|对象编码:public int hashCode();
-|对象比较:public boolean equals(Object obj);
3.在进行重复元素判断的时候首先利用hashCode()进行编码匹配,如果该编码不存在表示数据不存在,证明没有重复,如果该编码存在了,则进一步进行对象的比较处理,如果发现重复了,则此数据是不能保存的。
4.在java程序中真正的重复元素的判断处理利用的就是hashCode()与equals()两个方法共同作用完成的。
5.只有在排序要求的情况下(TreeSet)才会利用Comparable接口实现。