HashSet 所存取的元素是不可重复的,并且元素都是无序的,当向HashSet集合中添加元素时,首先会调用该对象的hashCode()方法来确定元素位置,然后再调用对象的euqals()方法来确保该位置没有重复元素.
TreeSet 内部采用排序二叉树来存取元素,可以保证TreeSet集合中没有重复的元素并排序,但是TreeSet中的存储的引用数据类型必须实现Comparable接口因为TreeSet中的元素在进行比较的时候,会调用Comparable中的compareTo()方法比较保证没有重复的元素,Integer,Double,String 都实现了这个接口 , 我感觉这是HashSet和Tree
Set的一个区别 , 还有就是 HashMap 是根据 哈希值存储元素 TreeSet 是以二叉树的方式存储元素 |