/// /// 迭代器介面
///
public inte***ce iterator
/// /// 資料容器介面
///
public inte***ce idatacontainer
/// /// 資料物件
///
public class data : idatacontainer
/// /// 集合長度
///
public int length
}/// /// 根據索引獲取值
///
///
///
public int getvalue(int index)
/// /// 獲取迭代器
///
///
public iterator getiterator()
}
/// /// 迭代器
///
public class dataiterator : iterator
/// /// 是否可以繼續向下迭代
///
///
public bool movenext()
/// /// 獲取當前值
///
///
public object getcurrent()
/// /// 下乙個索引
///
public void next()
/// /// 重置索引
///
public void reset()
}
class program
);//獲取到資料物件的迭代器
iterator iterator = data.getiterator();
//遍歷輸出資料值
while (iterator.movenext())
console.writeline("end");
console.readkey();
}}
設計模式GOF23 迭代器模式
迭代器模式 iterator 又稱為游標 cursor 模式,是一種行為性模型,行為型模式關注的是系統中物件之間的相互互動,解決系統在執行時物件之間的相互通訊和協作,進一步明確物件的職責。相比來說,建立型模式關注物件的建立過程,結構型模式關注物件和類的組合關係。提供一種可以遍歷聚合物件的方式。聚合物...
設計模式(16) 迭代器 Iterator
目錄 設計模式學習筆記首頁 設計模式 1 抽象工廠 abstractfactory 設計模式 2 生成器 builder 設計模式 3 工廠方法 factory method 設計模式 4 原型 prototype 設計模式 5 單例 singleton 設計模式 6 介面卡 adapter 設計模...
23種設計模式 裝飾器模式
7.應用場景 8.現實案例 9.注意事項 某些情況,當乙個類已經存在,並且可以對外提供核心功能時,但是,某個時刻,希望對這個類進行功能增強 如 增加快取 通常情況,我們可以修改原來的類,並增加對應的增強功能即可 但是,這種方式違背了 開 閉 原則,需要修改原來的 而且不夠靈活,如果有某個時刻又不想使...