迭代器模式

2021-08-20 14:11:10 字數 949 閱讀 5481

迭代器模式(iterator pattern)

結構1:聚合物件,儲存資料

2:迭代器,遍歷資料

案例(自定義迭代器)

自定義迭代器介面

/*

* 自定義的迭代器介面

*/public inte***ce myiterator

聚合物件

/*

* 自定義聚合類

*/public class concreteaggregate

public void removeobject(object obj)

public listgetlist()

public void setlist(listlist)

//獲得迭代器

public myiterator creareiterator()

/** 定義乙個內部類,實現迭代器介面,內部類可以直接訪問外部類成員變數

*/private class concreteriterator implements myiterator

@override

public void next()

} @override

public boolean hasnext()

return false;

} @override

public boolean isfirst()

@override

public boolean islast()

@override

public object getcurrentobj()

}}

客戶端測試

public class client 	}}

console:

mark

jekkeys

迭代器模式

迭代器模式 iterator 提供一種方法順序訪問乙個聚合物件中各個元素,而不是暴露該物件的內部表示。乙個聚集物件,而且不管這些物件是什麼都需要遍歷的時候,你就應該考慮用迭代器模式。你需要對聚集有多種方式遍歷時,可以考慮用迭代器模式。為遍歷不同的聚集結構提供如開始,下乙個,是否結束,當前哪一項等統一...

迭代器模式

我最早接觸的設計模式就是迭代器模式了哈 為什麼要有迭代器模式呢?看下下面的 就知道了哈 對於乙個陣列物件sz 我們要怎麼遍歷呢?public void bianlisz class geweishu public myiterator getiterator private class geweis...

迭代器模式

迭代器模式 提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露該物件多的內部表示。1 iterator抽象類 public abstract class iterator 2 aggregate聚集抽象類 public abstract class aggregate 3 concreteite...