集合存储对象的容器,面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,存储对象,集合是存储对象最常用的一种方式。
集合和数组的区别
1:长度区别,数组的长度,固定集合的长度可变
2:内容不同,数组存储的是同一种类型的元素,集合可以存储不同类型的元素
3:存储元素的数据类型不同,数组可以存储基本数据类型,也可以存储引用数据类,集合只能存储引用数据类型
Collection(单列集合最顶端接口)
——list(有序,可重复,有索引)
——ArrayList(底层数组,查询快,增删慢,非同步,线程不安全,效率高)
——LinkedList(底层链表,查询慢,增删快)
——Vector(底层数组,同步,线程安全,效率低)
——Set(无序,不可重复,无索引)
——HashSet(底层哈希表,唯一性)
——TreeSet(底层二叉树,唯一性)Comparable—Comparator
Map(双列集合最顶端接口,键值对存储,键唯一,值重复)
——HashMap(非同步,线程不安全,效率高,可存放空值空键)
——TreeMap(可对键排序)
——Hashtable(同步,线程安全,效率低,不可存放空值空键)