集合的继承图如下:

 

 Collection这个下面存的都是单列集合它的子类list。。是有序的。。。Set是无序的  List可以存储重复的元素  Set不能存储重复的元素Set的元素有唯一性

List:是有序的集合            Set:是无序的集合

ArrayList:可以根据String里的contains方法去重复有序如果存储自定义对象的时候必须重写equals方法

 

Linkedlist:可以保证怎样存就怎样取的集合有序

Vector:ArrayList是线程不安全,效率高 ,Vector是线程安全的效率低的

Set:是无序的但是保证元素的唯一性

HashSet:必须重写Hashcode的方法和Equals方法存储自定义对象的时候是无序的保证元素唯一性

LinkedHashSet:可以保证怎么样存的就怎么样取

TreeSet:可以保证元素的唯一性存储自定义对象的时候自定义对象实现Comparable方法重写CompareTo方法来按照方法里的格式排序,或者在创建TreeSet的对象的时候在方法里面加入匿名内部类Comparator方法重写里面的Compare方法来排序

集合里面有一个专门为集合来遍历的迭代器Iterator和ListIterator区别是Iterator在迭代的时候不能增删ListIterator可以在迭代的时候增删。

Map:map中的键是唯一的,Set中的元素是唯一的;Map中的hash算法只针对键有效,对值无效,