迭代器模式提供了一种顺序访问某个集合中各个元素的解决方案。迭代器模式的目的就是将遍历集合对象的行为抽象来,构成一个迭代器类,让它来完成遍历工作。我们将储存集合对象的数据结构称容器,迭代器的目的就是遍历容器。分离的目的在于为访问容器中的元素提供不同的迭代器,避免容器的数据结构过于复杂,这样的设计使得“迭代器”和“容器”都符合“单一职责原则”设计原则。
迭代器模式的优点是简化了容器的接口,支持以不同的方式遍历一个容器角色,可以自己写深层遍历和多种遍历的迭代器。但是在迭代器遍历的过程中,通过该迭代器进行容器元素的增减操作是否安全是我们应该注意的问题。
结构图:
示例代码如下:

















































































































































































































































































[1] http://www.cnblogs.com/singlepine/archive/2005/10/30/265024.html
[2] http://www.cnblogs.com/Terrylee/archive/2006/09/16/Iterator_Pattern.html
[3] http://www.cnblogs.com/webabcd/archive/2007/05/17/750715.html