疊代器模式(Iterator),提供一種方法順序訪問一個聚合對象中的各種元素,而又不暴露該對象的內部表示。
基本介紹
- 中文名:疊代器模式
- 外文名:Iterator Pattern
- 套用學科:軟體開發
- 適用領域範圍:計算機
簡介
意圖
適用性
- 訪問一個聚合對象的內容而無需暴露它的內部表示
- 支持對聚合對象的多種遍歷
- 為遍歷不同的聚合結構提供一個統一的接口
參與者
協作
效果
- 它支持以不同的方式遍歷一個聚合
- 疊代器簡化了聚合的接口
- 在同一個聚合上可以有多個遍歷
實例
# 序列得到x = [42, "test", -12.34]it = iter(x)try: while True: x = next(it) # 在 Python 2 中,要改成 it.next() print xexcept StopIteration: pass# generatordef foo(n): for i in range(n): yield iit = foo(5)try: while True: x = next(it) # 在 Python 2 中,要改成 it.next() print xexcept StopIteration: pass