集合类主要分两大类:Collection 和 Map
集合:用来存储数据时,数据个数不确定,无法使用数组,便用到java容器---集合。
和数组不同之处:
数组存储的是同一类型的元素,可以存储基本数据类型
集合存储的是对象,对象可以不一致
Collection接口
1:list接口: 内容有序 , 通过索引可精准操作元素。允许重复,空值,支持对元素增删改查
Arraylist: 长度可变,原理为创建新数组+赋值数组,查询速度快,增删改查慢,不是线程安全。
Linkedlist: 基于双循环链表实现,不同步。查询慢,增删速度快。实现queue接口,因此可以实现堆栈,队列。
Vector: 可增长的数组结构,同步,效率低。