設計模式學習筆記 迭代器模式

2021-06-20 11:16:30 字數 410 閱讀 6572

迭代器模式據說有人要將它從設計模式中剔除,原因是各種語言基本都內建了這種模式,比如c#的foreach語句,實在是太平常了,不值得特別一提。

但我對這個迭代器,尤其是.net的ienumerable、ienumerator甚感迷惑,有必要總結一下。

迭代器模式,主要由兩部分組成:聚集器和迭代器。

聚集器代表資料集合;迭代器用於訪問聚集器裡的資料。迭代器在聚集器類裡面實現,類中類的方式。

在.net裡面,聚集器介面就是ienumerable,迭代器介面就是ienumerator。ienumerable返回乙個ienumerator物件。如果乙個物件要提供foreach這種迭代功能,應該實現這兩個介面。

設計模式筆記(十六) 迭代器模式

迭代器模式 iterator 提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露該物件的內部表示。使用場合 乙個聚集物件,不管這些物件是什麼的都需要遍歷的時候,你就需要考慮迭代器模式。迭代器模式在訪問陣列 集合 列表資料時,尤其是資料庫操作時,是非常普遍的應用,但是由於它太普遍了,所以各種高階語...

13 迭代器模式 設計模式筆記

場景 提供一種可以遍歷聚合物件的方式。又稱為 游標cursor模式 聚合物件,儲存資料 迭代器 遍歷資料 開發中常見的場景 jdk內建的迭代器 list set public inte ce myiterator 自定義的聚合類 author administrator public class c...

設計模式 迭代器模式

迭代器模式是屬於物件行為性的模式。首先是定義 提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露物件的表示方法。迭代器的結構圖 適用性 1 訪問乙個聚合物件的內容而無需暴露它的內部表示 2 支援聚合物件的多種遍歷 3 為遍歷不同的聚合結構提供乙個統一的介面 支援多型迭代 協作 concretei...