一、集合和数组的区别
集合和数组的区别:数组的长度是固定的,集合的长度是可变的。数组既可以存储基本数据类型,也可以存储引用数据类型。集合只能存储引用数据类型,所以对于基本数据类型byte、short、int等只能存储他们对应的包装类Byte、Short、Integer。
二、集合类体系结构
单列集合的顶层接口是Collection接口,双列集合的顶层接口是Map接口。
2.1 Collection集合的体系结构
Collection集合分了2大派系,List系列集合和Set系列集合。其中List系列集合添加的元素是有序、可重复、有索引,Set系列集合添加的元素是无序、不重复、无索引。
List系列集合添加的元素是有序、可重复的。List是接口,只能创建对应的实现类ArrayList和LinkedList,这两个集合添加元素当然也是有序、可重复的。
ArrayList底层是数组结构实现的,所以查询快、增删慢。
LinkedList底层是链表结构实现的,所以查询慢、增删快。
Set系列集合添加的元素是无序、不重复的。Set是接口,只能创建对应的实现类,这些实现类添加元素当然也是无序、不可重复的。