DesignPattern - Behavioral - Iterator
Tue, Aug 7, 2018
閱讀時間 1 分鐘
Iterator
Iterator 是一種行為模式,使用它來提供一種標準的方式來遍歷一組對象。我們在 Java 集合框架中廣泛使用 Iterator,其中迭代器接口提供了遍歷集合的方法。 迭代的邏輯嵌入在集合本身中,它可以幫助客戶端程序輕鬆地對其進行迭代。Iterator 對象包含公共方法,以允許客戶端對像在容器內的對象列表迭代。
-
Iterator 定義 interface 用來迭代或存取的接口
-
ConcreteIterator implement Iterator interface tracking the current position in the traversal of the aggregate.
-
Aggregate 定義用於創建 Iterator 對象的接口。
-
ConcreteAggregate 實現 Iterator 創建接口以返回正確的 ConcreteIterator 的實例。
- 當想提供一種標準方法來迭代集合併隱藏客戶端程序的實現邏輯時。
- 當您需要訪問聚合對象的內容而不暴露其內部表示時。
- 支持聚合對象的多次遍歷。
- 為遍歷不同的聚合結構提供統一的接口(即支持多態迭代)。