設計模式 十七 迭代器模式

2021-09-29 03:54:19 字數 1442 閱讀 5370

比如集合:迭代器將儲存資料和遍歷資料隔離開來,但是每新增加乙個集合就需要新增乙個迭代器型別。

日常使用時很少會自定義給乙個迭代器,都是復用jdk的迭代器。

課程

public

class

course

public string getname()

}

存放課程

/**

* 存放課程 + 遍歷課程

*/public

inte***ce

courseaggregate

/**

* 儲存課程和遍歷課程的實現類

*/public

class

courseaggregateimpl

implements

courseaggregate

@override

public

void

addcourse

(course course)

@override

public

void

removecourse

(course course)

@override

public courseiterator getcourseiterator()

}

遍歷課程

/**

* 迭代器:遍歷課程

*/public

inte***ce

courseiterator

/**

* 遍歷課程

*/public

class

courseiteratorimpl

implements

courseiterator

@override

public course nextcourse()

@override

public

boolean

islastcourse()

return

true;}

}

測試類

原始碼:

設計模式 十七 迭代器模式

iterator pattern 迭代器模式 iterator pattern 提供一種方法來訪問聚合物件,而不用暴露這個物件的內部表示,其別名為游標 cursor 迭代器模式是一種物件行為型模式。聚合物件是來儲存一系列資料。聚合物件擁有兩個職責 一是儲存資料 二是遍歷資料。從依賴性來看,前者是聚合...

大話設計模式筆記(十七) 迭代器模式

提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露該物件的內部表示。聚集抽象類 created by callmedevil on 2019 8 17.public abstract class aggregate 迭代器抽象類 created by callmedevil on 2019 8 ...

設計模式觀後(c 還原之十七 迭代器模式)

迭代器模式 現在已經基本感覺沒意思了,感覺每個23鐘模式圍繞著前面的6個原則設計 只是增加了示例見識,還不見得全記得住。估計要用的時候才會迅速找到 不說了,要加速23鐘模式 快點進入模式混合搭配,才能深刻理解 作者把管理專案資訊做了乙個迭代器 先抽象基類 class projectiterator ...