迭代器模式(Iterator Pattern)

2021-07-24 23:11:14 字數 993 閱讀 4199

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

適用性:

訪問乙個聚合物件的內容而無需暴露它的內部表示。

支援對聚合物件的多種遍歷。

為遍歷不同的聚合結構提供乙個統一的介面(即, 支援多型迭代)。

類圖:

//測試

public

class

iteratorpatterntest

}}//集合介面

inte***ce collection

//集合介面的實現類

class mycollection implements collection;

@override

public iterator createiterator()

@override

public object get(int pos)

@override

public

intsize()

}//迭代器介面

inte***ce iterator

//迭代器介面的實現類

class myiterator implements iterator

@override

public

boolean

hasnext()

return

false;

}@override

public object next()

return collection.get(pos);}}

執行結果:

abcdef

迭代器模式

迭代器模式 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...