Collection体系图:
Collection接口实现类特点:
public interface Collection
- collection实现子类可以存放多个元素,每个元素可以是Object
- 有些Collection的实现类,可以存放重复的元素(List接口),有些不可以(Set接口)
- Collection的实现类,有些是有序的(List),有些不是有序的(Set)
- Collection接口没有直接的实现子类,是通过它的子接口Set和List来实现的
Collection接口常用方法:
以实现子类ArrayList为例
- add 添加单个元素
- remove 删除指定元素(传入具体元素)
- contains 查找元素是否存在
- size 获取元素个数
- isEmpty 判断是否为空
- clear 清空
- addAll 添加多个元素(传入另一个ArrayList)
- containsAll 查找多个元素是否都存在(传入另一个ArrayList)
- removeAll 删除多个元素(传入另一个ArrayList)
Collection接口遍历元素 :
Iterator迭代器
基本介绍:
- Iterator对象称为迭代器,主要用于遍历Collection集合中的元素
- 所作实现了Collection接口的集合类都有一个Iterator()方法,用以返回个实现了 Iterator接口的对象,即可以返回一个迭代器。
- Iterator仅用于遍历集合,Iterator本身并不存放对象
迭代器执行原理:
Iterator iterator=arr.iterator(); //得到一个集合的送代器
//hasNext():判断是否还有下一个元素
while(iterator.hasNext()){
System.out.printIn(iterator.next());
//next()作用:1.下移 2.将下移之后位置上的元素返回
//集合内元素类型不唯一可用object接收
}
增强for循环
增强for循环,可以代替iterator迭选代器
特点:增强for就是简化版的iterator,本质一样,只能用于遍历集合或数组
基本语法:
for(元素类型元素名 : 集合名或数组名){
访问元素
}
for(Object o : arr){
System.out.println(o);
}
增强for底层仍是迭代器