Set是一个无序且不可重复的集合。
Set包括的常用类有 hashSet,LinkedHashSet,treeSet,EnumSet。
1.HashSet集合中判断俩个元素是否相等的通过俩个对象的equals方法,还有两个对象的hashCode()方法返回值相等。
2.LinkedHashSet类是HashSet的子类,它是通过链表维护元素的次序 ,所以LinkedHashSet添加的元素是有顺序。
3.TreeSet是SortedSet接口的实现类
Comparator comparator() 如果TreeSet定制了排序方法,该方法就会返回定制排序所使用的comparator,如果是自然排序,则是返回null
Object first()返回集合中第一个元素
Object last() 返回集合中最后一个元素
Object lower()返回集合位于中指定元素之前的元素
Object higer()返回集合中位于指定元素之后的元素
SortedSet subSet(Object fromIndex,object toIndex)返回Set中的子集合,从fromIndex(包含)到同Index(不包含)
SortedSet headSet(Object toElement)返回set的子集合,由小于toElement的元素组成
SortedSet tailSet(Object fromElement) 返回set的子集,由大于或等于fromElement的元素组成
TreeSet有俩种排序分别是自然排序和定制排序,但是TreeSet默认是自然排序
4.EnumSet是一个专门为枚举设计的类,在EnumSet中必须都是枚举类型的元素,在内部存储是以位向量的形式存储。
EnumSet是有序的,不允许加入null类型的元素。
Enumset allOf()创建一个包含指定枚举类中所有枚举值的EnumSet集合
EnumSet complementOf() 创建一个其元素类型与指定EnumSet里元素类型相同的EnumSet集合。
EnumSet copyOf(Collection c)使用一个普通的集合来创建Enumset集合
EnumSet copyOf(Enumset c)创建一个指定的EnumSet的集合
EnumSet noneOf(Class elemetype)创建一个元素类型为指定枚举型的空集EnumSet。
EnumSet range(E from, E to)创建一个包含从from到to枚举型范围内所有枚举值的EnumSet集合