设计模式之迭代器模式
# 设计模式之迭代器模式
# 一、简介
将遍历数据的行为从聚合对象中分离出来,这样既可以做到不暴露集合的内部结构,又可以访问集合元素
# 二、实现方式
抽象迭代器(Iterator): 迭代器的接口,含有hasNext
, next
, remove
等方法
具体迭代器(ConcreteIterator): 实现了Iterator
抽象聚合类(Aggregate): 聚合类的接口
具体聚合类(ConcreteAggregate): 实现了Aggregate
,提供一个方法, 返回一个迭代器,该迭代器可以遍历集合中的元素
# 三、应用场景
# 1、JAVA 集合中的迭代器模式: Iterator
我们通过迭代器遍历一下List
//我们使用迭代器遍历一下List
public static void main(String args[]) {
List<Integer> ll = new ArrayList<>();
for (int i = 0; i < 10; i++)
ll.addLast(i);
Iterator<Integer> ii = ll.iterator();
while (ii.hasNext())
System.out.println(ii.next());
}
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
- List:抽象聚合类
- ArrayList:具体聚合类
- Iterator:抽象迭代器
- Itr:具体迭代器,
list.iterator()
返回的是实现了Iterator
接口的具体迭代器对象Itr