迭代器模式 (Iterator)

Posted willjava

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了迭代器模式 (Iterator)相关的知识,希望对你有一定的参考价值。

迭代器模式(Iterator), Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation. (它提供一各方法访问一个窗口对象中各个元素,而又不需暴露该对象的内部细节。)

 

通用类图:

技术分享

角色:

1. Iterator抽象迭代器:负责定义访问和遍历元素的接口。在Java中,只迭代器为interface,其中定义了三个方法,hasNext(), next(), remove().

2. ConcreteIterator具体迭代器:实现迭代器接口,完成元素的遍历。持有容器的引用以完成遍历。

3. Aggregate抽象容器: 负责创建具体迭代器角色的接口,必须提供类似createIterator()这样的方法。在Java中,一般是iterator()方法。

4. ConcreteAggregate具体容器。

 

以上是关于迭代器模式 (Iterator)的主要内容,如果未能解决你的问题,请参考以下文章

设计模式一:迭代器(Iterator)模式

迭代器模式-Iterator

GOF23设计模式之迭代器模式(iterator)

Iterator - 迭代器模式

迭代器模式(Iterator Pattern)

JAVA设计模式之迭代器设计模式