Java設計模式 迭代器模式(Iterator)

2021-09-14 00:49:39 字數 1830 閱讀 1377

迭代器角色(iterator)

/**

* 迭代器角色(iterator):迭代器角色負責定義訪問和遍歷元素的介面。

* * @author yanbin

* */

public

inte***ce

iterator

具體迭代器角色(concreteiterator)
/**

* 具體迭代器角色(concrete iterator):具體迭代器角色要實現迭代器介面,並要記錄 遍歷中的當前位置。

* * @author yanbin

* */

public

class

balliterator

implements

iterator

// 實現迭代器中所具有的方法

public

boolean

hasnext()

else

}public object next()

}

容器角色(container)
/**

* 容器角色(container):容器角色負責提供建立具體迭代器角色的介面。

* * @author yanbin

* */

public

inte***ce

container

具體容器角色(concretecontainer)
/**

* 集合中的元素,pojo

* * @author yanbin

* */

public

class

ball

public string getballcolor()

}

/**

* * @author yanbin

* */

public

class

ballcontainer

implements

container

public ball getballat

(int index)

public

void

(ball ball)

public

intgetcount()

public arraylist

getballs()

public iterator iterator()

}

客戶端
/**

* 迭代器模式:又叫做游標(cursor)模式。提供一種 方法訪問乙個容器(container)物件中各元素,而又不需暴露該物件的內部細節。

* 組成:迭代器角色(iterator);具體迭代器角色(concrete iterator);容器角色(container);具體容器角色(concrete

* container); 迭代器模式在客戶與容器之間加入了迭代器角色。

* 迭代器模式抽象了具體迭代器角色, 使得客戶程式更具一般性和重用性。這被稱為多型迭代。

* 是由客戶程式來控制遍歷的程序,被稱為外部迭代器;還有一種實現方式便是由迭代器自身來控制迭代,被稱為內部迭代器。

* * @author yanbin

* */

public

class

iteratorpattern

}}

JAVA系列 設計模式 迭代器模式

定義 提供一種方法訪問乙個容器物件中各個元素,而又不暴露該物件的內部細節。我們的list遍歷就是用迭代器模式實現的。類圖 迭代器定義訪問和遍歷元素的介面。author administrator public inte ce iterator package iterator public clas...

Java設計模式之迭代器模式 五

迭代器模式 提供一種方法順序訪問乙個集合物件中的各個元素,而又不需要暴漏物件的內部表示。合理組織資料的結構以及相關操作時程式設計的乙個重要方面,比如在程式設計中經常會使用諸如鍊錶 雜湊表等資料結構。鍊錶和雜湊表等資料結構都是可以存放若干個物件的集合,其區別時按著不同的方式來儲存物件。我們希望無論何種...

設計模式 迭代器模式

迭代器模式是屬於物件行為性的模式。首先是定義 提供一種方法順序訪問乙個聚合物件中各個元素,而又不暴露物件的表示方法。迭代器的結構圖 適用性 1 訪問乙個聚合物件的內容而無需暴露它的內部表示 2 支援聚合物件的多種遍歷 3 為遍歷不同的聚合結構提供乙個統一的介面 支援多型迭代 協作 concretei...