迭代器(Iterator)
Intent
提供一种顺序访问聚合对象元素的方法,并且不暴露聚合对象的内部表示。
Class Diagram
- Aggregate 是聚合类,其中 createIterator() 方法可以产生一个 Iterator;
- Iterator 主要定义了 hasNext() 和 next() 方法;
- Client 组合了 Aggregate,为了迭代遍历 Aggregate,也需要组合 Iterator。
Implementation
1 | public interface Aggregate { |
1 | public class ConcreteAggregate implements Aggregate { |
1 | public interface Iterator<Item> { |
1 | public class ConcreteIterator<Item> implements Iterator { |
1 | public class Client { |