看菜譜點餐,迭代設計模式 Iterator

2021-09-09 04:07:18 字數 2140 閱讀 1109

生活在城市,平時少不了去餐館吃飯。或是加班下班之後,難免吃上宵夜之後,才回家。

在餐館或是大排檔坐下,老闆一般都會在第一時間,給你上茶水以及菜譜(在此博文中,這是重點)。我們接過菜譜之後,都會把菜譜遍歷一遍,不放過任一美味與自己喜歡吃的佳餚。

遍歷一遍,此就是一種開發的設計模式,叫迭代器設計模式。

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

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

//////

summary description for iterator

///namespace

insus.net

}

還要提供乙個聚集的抽象類:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

//////

summary description for aggregate

///namespace

insus.net

}

具體的迭代類:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

//////

summary description for concreteiterator

///namespace

insus.net

//獲取第乙個菜譜專案名稱

public

override

object

firstitem()

//下乙個菜譜專案名稱

public

override

object

nextitem()

//瀏覽至當前的菜譜專案名稱

public

override

object

currentitem()

//是否瀏覽至菜譜結尾。如果是,返回bool真(true)值。

public

override

bool

isdone()}}

具體的聚集類,如菜譜:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

//////

summary description for concreteaggregate

///namespace

insus.net

public

intcount

}//宣告乙個索引器

public

object

this[int

index]

set }}}

站點執行看看:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

using

system.web.ui;

using

system.web.ui.webcontrols;

using

insus.net;

public

partial

class

iteratordemo : system.web.ui.page}}

迭代設計模式源**(.net 4.0):

看菜譜點餐,迭代設計模式 Iterator

生活在城市,平時少不了去餐館吃飯。或是加班下班之後,難免吃上宵夜之後,才回家。在餐館或是大排檔坐下,老闆一般都會在第一時間,給你上茶水以及菜譜 在此博文中,這是重點 我們接過菜譜之後,都會把菜譜遍歷一遍,不放過任一美味與自己喜歡吃的佳餚。遍歷一遍,此就是一種開發的設計模式,叫迭代器設計模式。迭代器模...

點餐系統設計文件

點餐系統設計文件 軟體名稱 吃貨老爸點餐系統 開發背景 現在我準備自己做一套點餐系統,並免費發布給大家的餐館用,讓大家感受這種新潮的點餐方式。一,概述 1 做一款市場上通用的電子點餐系統,主要用於普通餐廳的點餐服務。2 軟體主要採用單機版免費,多使用者版收費的模式。3 單機版包括帶乙個移動端的點菜機...

JAVA設計模式 Iterator迭代器模式

迭代器模式 類似於for迴圈式的 段在日常開發過程中是很經常用到的,所有有了iterator模式。既然簡單的for迴圈能實現,為什麼要引入迭代器模式呢?因為iterator可以跟實現分開,單獨進行遞增。後面會詳細分析。下面通過乙個例子來看一下迭代器模式的使用。例子是乙個書架,可以往書架上放書本。為了...