set 及 hashset 是不允许重复的。。。。指存入值的时候 set.add("11")
treeSet 也不允许重复。。而且TreeSet 会自动排序。。。
Set 是一种最简单的集合,集合中的对象不安特定的方式排序,并且没有重复的对象,Set接口主要有两种实现类:HashSet,TreeSet。HashSet类安装Hash算法来存取集合中的对象,存取速度比较的快。HashSet类还有一个子类,LinkHashSet类,他不仅实现了Hash算法,而且实现了链表数据结构,链表数据结构能提高插入和删除元素的性能。TreeSet类实现了SortedSet接口,具有排序功能。
HashSet按照哈希算法来存取集合中的对象,具有很好的存取和查找性能。当向集合中加入一个对象时,HashSet会调用对象的hashCode()方法来获取哈希码,然后根据这个哈希码进一步计算出对象在集合中的存放位置。
当TreeSet向集合中加入一个对象时,会把他插入到有序的对象序列中,TreeSet支持两种排序方式:自然排序和客户和排序。在默认情况下采用自然排序。