集合的继承图如下:
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算法只针对键有效,对值无效,