注:现在的各种编程语言都集成了迭代器,所以本章可以不读,整理出来只是因为作者执拗的完美主义心里--轻微的强迫症
1.简介
- 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。
- 迭代器模式是一种行为型模式。
2.场景
当你需要访问一个聚焦对象,而且不管这些对象是什么都需要遍历的时候。
3.优缺点
优点:
1、它支持以不同的方式遍历一个聚合对象。
2、迭代器简化了聚合类。
3、在同一个聚合上可以有多个遍历。
4、在迭代器模式中,增加新的聚合类和迭代器类都很方便,无须修改原有代码。
缺点:
由于迭代器模式将存储数据和遍历数据的职责分离,增加新的聚合类需要对应增加新的迭代器类,类的个数成对增加,这在一定程度上增加了系统的复杂性。
4. 图片模型
![](https://img.haomeiwen.com/i15731841/63adcde033c39cca.png)
5. 代码实现
![](https://img.haomeiwen.com/i15731841/3d404efcad3db614.png)
![](https://img.haomeiwen.com/i15731841/b96038d7647017d5.png)
![](https://img.haomeiwen.com/i15731841/2bb85f595e83d0d5.png)
![](https://img.haomeiwen.com/i15731841/6ae562d178b00af9.png)
![](https://img.haomeiwen.com/i15731841/d92722e2b5820c14.png)
![](https://img.haomeiwen.com/i15731841/a75bb7270f1f958d.png)
![](https://img.haomeiwen.com/i15731841/24a0107f676b7211.png)
![](https://img.haomeiwen.com/i15731841/0847ba13f45594ac.png)
网友评论