Set集合中的内容不按特定的顺序排序,只是简单添加对象,不能包含重复的对象
**Set集合由 set类和set接口实现类组成。 **
Set接口继承Collection接口,因此包含了Collection的所有方法。
<br />
Set 接口常用实现类为:HashSet类 和 TreeSet类 。
- HashSet:无序,HashSet表实现Set接口,每个对象的元素存储在Hash表中,当元素数量较多时,其访问效率比线性列表快。
- LinkedHashSet: 插入顺序,LinkedHashSet采用Hash表和链表相结合的结构存储集合中的元素,即保证了元素的顺序,又具有较高的存储效率。
- TreeSet:自然排序,对象中元素按字典顺序升序排序(根据Unicode编码)。
Set,List,Map的常用方法
add(E) : boolean //将元素插入到集合的末尾
add(int ,E) : void //将元素插入到指定位置,无返回值
addAll(int,Collections<? extends E>) : boolean //将一个集合插入到当前集合指定位置
addAll(int,Collections<? extends E>) : boolean//将一个集合插入到当前集合末尾
clear() : void//清除当前集合中所有内容,无返回值
contains(Obj):boolean //判断集合中是否包含指定元素
containsAll(Collection<?>) : boolean //判断当前集合中是否包含指定集合
equals(Obj) : boolean //判断集合是否相同
get(int) : E //取索引位置的元素
hashCode() : int // 返回对象的散列码
indexOf(Obj) : int // 查找该元素在集合中第一次出现的索引,如果不存在则返回-1
isEmpty() : boolean // 判断集合是否为空
iterator() : Iterator<E> //返回一个迭代器
lastIndexOf(Obj) : int listIterator() :
ListIterator<E> listIterator( int ) :
ListIterator<E> remove(int) : E //删除指定位置的元素,返回该元素的值
removeAll(Collections<?>) : boolean //删除当前集合中的所有指定集合中的元素(即删除交集)
replaceAll(UnaryOperator<E>) : void
retainAll(Collection<?>):boolean //取当前集合与指定集合的交集,存入当前集合
set(int, E) : E // 将集合指定位置的元素设置为
E size() : int //返回集合中元素的个数
sort(Comparator<? super E>): void//将集合转化为Array以后用Arrays类中的sort方法进行排序,把原集合覆盖
spliterator() : Spliterator<E> // 调用Spliterator接口中的spliterator()方法,将集合分割后遍历,可以多线程同时操作
subList(int, int):List<E> // 截取子集合
toArray():Object[] // 将集合转化为Object类型的数组
toArray(T[]) : <T>:T[] // 将集合转化为指定类型的数组