目录
1. Collection接口实现类的特点
(1)collection实现子类可以存放多个元素,每个元素可以是Object。
(2)Collection的实现类 有些可以存放重复的元素,有些不可以。
(3)Collection的实现类 有些是有序的(List),有些不是有序的(Set)。
(4)Collection接口没有直接的实现子类,是通过它的子接口Set和List来实现的。
2. Collection接口 常用方法
(以实现子类ArrayList来演示)
(1)add 添加单个元素(只要是Object类的都可以添加)
(2)remove 删除指定元素,可以按照索引删除,也可以直接指定删除某个元素
(3)contains 查找元素是否存在
(4)size 获取元素个数
(5)isEmpty 判断集合是否为空
(6)clear 清空集合所有元素
(7)addAll 添加多个元素
(8)containsAll 查找多个元素是否都存在
(9)removeAll 删除多个元素
3. Collection接口 遍历元素的方式
3.1 Iterator 迭代器
3.1.1 基本定义
1)Iterator对象称为迭代器,主要用于遍历Collection集合中的元素。
2)所有实现了Collection接口的集合类都有一个iterator()方法,用于返回一个实现了Iterator接口的对象,即 可以返回一个迭代器。
3)Iterator 仅用于遍历集合,Iterator 本身并不存放对象。
3.1.2 基本语法
Iterator iterator = coll.iterator(); //得到一个集合的迭代器
//hasNext():判断是否还有下一个元素,如果没有下一个元素了,就停留在最后一个元素
while(iterator.hasNext()) {
//next()的作用:1.下移 2.将下移以后集合位置上的元素返回
System.out.println(iterator.next());
}
3.1.3 使用细节
1)在调用iterator.next()方法之前必须要调用iterator.hasNext()进行检测。若不调用,且下一条记录无效,直接调用iterator.next()会抛出异常。
2)当程序执行完while循环,退出while后,这时iterator迭代器指向集合最后的元素,不能再直接进行调用,如果调用就会抛出异常。如果想要再次调用,需要使用 iterator = col. iterator(); 重置迭代器。
3)IDEA快捷创建方法:输入itit。
3.2 增强for循环
3.2.1 基本定义
增强for循环 可以代替iterator迭代器,增强for就是简化版的iterator,本质一样。只能用于 遍历集合或数组。
3.2.2 基本语法
for(元素类型 元素名 : 集合名或数组名) {
访问元素
}
3.2.3 使用细节
1)增强for循环只能用来遍历集合和数组。
2)增强for循环的底层仍然是迭代器,可以理解为简化版的迭代器遍历。
3)IDEA快捷创建方法:输入I。