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

2021-04-21 07:02:02 字數 1098 閱讀 4997

迭代器模式(iterator):提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露該物件的內部表示。

使用場合:乙個聚集物件,不管這些物件是什麼的都需要遍歷的時候,你就需要考慮迭代器模式。迭代器模式在訪問陣列、集合、列表資料時,尤其是資料庫操作時,是非常普遍的應用,但是由於它太普遍了,所以各種高階語言都對它進行了封裝,所以反而給人的感覺此模式反而不太常用。 

using system;

using system.collections.generic;

/*** 迭代器模式(iterator):提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露該物件的內部表示。

使用場合:乙個聚集物件,不管這些物件是什麼的都需要遍歷的時候,你就需要考慮迭代器模式。迭代器模式在訪問陣列、集合、列表資料時,尤其是資料庫操作時,是非常普遍的應用,但是由於它太普遍了,所以各種高階語言都對它進行了封裝,所以反而給人的感覺此模式反而不太常用。

*/namespace studesignmode.iterator

abstract

class absaggregate

class concreteiterator : absiterator

public

override

object first()

public

override

object next()

return ret;

}public

override

bool isdone()

public

override

object currentitem()

}class concreteaggregate : absaggregate

public

int count  }

public

object

this[int index]

set }}

class clienttest

console.writeline();}}

#endregion

}

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

迭代器模式據說有人要將它從設計模式中剔除,原因是各種語言基本都內建了這種模式,比如c 的foreach語句,實在是太平常了,不值得特別一提。但我對這個迭代器,尤其是.net的ienumerable ienumerator甚感迷惑,有必要總結一下。迭代器模式,主要由兩部分組成 聚集器和迭代器。聚集器代...

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

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

設計模式 迭代器模式

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