- 特点: 迭代器模式主要是为了替代普通的for循环语句,而且更具有灵活的可扩展性,利用接口(interface)的通用性,隐藏循环遍历集合条件的具体实现,使得程序的耦合性降低,不论集合中的数据结构如何变化,只需要修改迭代器的实现,其他任何使用迭代器遍历集合的代码都不需要修改。
- 角色:
| 角色名称 | 角色定义 |
|---|---|
| Iterator(迭代器) | 该角色负责定义按顺序遍历元素的接口 |
| ConcreteIterator(具体的迭代器) | 该角色负责实现Iterator角色所定义的接口 |
| Aggregate(集合) | 该角色主要负责定义创建Iterator角色所定义的接口,也可以定义集合通用操作接口 |
| ConcreteAggregate(具体集合) | 该角色负责实现Aggregate角色所定义的接口 |
-
角色关系:如下图
iterator.png
- 代码示例:Iterator
以上文献参考:《图解设计模式》












网友评论