是Java提供的随机访问对象序列的最有效方法
是一个简单的线性序列,访问元素的速度较快
数组的缺点
大小自创建以后就固定了,在其整个生存期内其大小不可改变
数组元素只能是同一类型
集合
可动态改变其大小
可在序列中存储不同类型的数据
集合
把具有相同性质的一类东西,汇聚成一个整体
在Java2中有很多与集合有关的接口及类
它们被组织在以Collection及Map接口为根的层次结构中,称为集合框架
在Java2之前,在Java 1.0/1.1中,没有完整的集合框架。只有一些简单的可以自扩展的容器类
Vector
Hashtable
集合框架(Java Collections Framework)
为表示和操作集合而规定的一种统一的标准的体系结构
提供了一些现成的数据结构可供使用,程序员可以利用集合框架快速编写代码,并获得优良性能
包含三大块内容
对外的接口:表示集合的抽象数据类型,使集合的操作与表示分开
接口的实现:指实现集合接口的Java类,是可重用的数据结构
对集合运算的算法:是指执行运算的方法,例如在集合上进行查找和排序
Collection接口
声明时可以使用一个参数类型,即Collection<E>
声明了一组操作成批对象的抽象方法:查询方法、修改方法
查询方法
int size() – 返回集合对象中包含的元素个数
boolean isEmpty() – 判断集合对象中是否还包含元素,如果没有任何元素,则返回true
boolean contains(Object obj) – 判断对象是否在集合中
boolean containsAll(Collection c) – 判断方法的接收者对象是否包含集合中的所有元素