集合概念
对象的容器,存储对象的对象,可替代数组
特点:容器的工具类,定义了多个对象进行操作的常用方法。
位置:Java.util.*
Collection体系集合
标题Collection父接口
特点:代表一组任意类型的对象,无序、无下标。
方法:
List集合
List子接口
特点:有序、有下标、元素可以重复
方法:
List实现类
-
ArrayList
数组结构实现,查询快、增删慢
JDk1.2版本,运行效率快、线程不安全。 -
Vector
数组结构实现,查询快,增删慢
JDK1.0版本,运行效率慢,线程安全 -
Linked List:
链表结构实现,增删快,查询慢
繁星集合
概念:参数化类型、类型安全的集合,强制集合元素的类型必须一致。
特点:
- 编译时即可检查,而非运行时抛出异常
- 访问时,不必类型转换(拆箱)。
- 不同泛型之间应用不能相互赋值,泛型不存在多态。
Set集合
Set子接口
特点:无序、无下标、元素不可重复
方法:全部继承Collection中的方法。
标题Set实现类
Hash Set【重点】:
- 基于HashCode实现元素不重复
- 当存入元素的哈希码相同时,会调用equals进行确认,如结果为true,则拒绝后者存入。
- LinkedHashSet:
- 链表实现的Hash Set,按照链表进行存储,即可保留元素的插入顺序
- TreeSet:
- 基于排列顺序实现元素不重复
- 实现了SortedSet接口,对集合元素自动排序
- 元素对象的类型必须实现Comparable接口,指定排序规则
- 通过CompareTo方法确定是否为重复元素。