IP是指依序遍历并处理多个数字或变量。
IP的所有参与者:
Iterator 迭代器
Interface Iterator{
Public Boolean hasNext(){}
Public Object next(){}
}
ConcreteIterator 具体迭代器
class ConcreteIterator() implements Interator
Aggregate 聚合 定义参与Iterator的接口
Interface aggregate{
Public abstract Iterator iterator();
}
ConcreteAggregate 具体聚合
实际上实现了Aggregate所定义的接口,他是实际的Iterator参与者,即concreteIterator的对象实例。
例:
IP的类图:
注意点:next()方法
返回现在的元素,同时进到下一个位置
hasNext()
检查接下来是否可以调用
next()
方法
相关
Pattern
Visitor Pattern
Composite Pattern