經驗

當前位置 /首頁/經驗 > /列表

iterator用法

iterator用法

在Java中,一個物件要表明自己支援迭代的話,就要實現Iterable介面。集合中Collection實現了這個介面,所以其實現可以用Iterator()方法,這個方法是實現了Iterable接口才特有的方法。舉個例子,ArrayList實現了Iterable介面,他就可以呼叫Iterator()方法,得到一個Iterator物件進行迭代。

而僅就遍歷資料而言,iterator遍歷比下標遍歷,多產生了一個iterator物件,每獲取一個成員會多進行兩次檢查。當然,這並不會造成很大的效能差異,多出來的物件和檢查消耗的效能可以忽略不計,不會成為效能瓶頸。

資料拓展:迭代器(Iterator)模式,又叫做遊標(Cursor)模式。GOF給出的定義為:提供一種方法訪問一個容器(container)物件中各個元素,而又不需暴露該物件的內部細節。從定義可見,迭代器模式是為容器而生。很明顯,對容器物件的訪問必然涉及到遍歷演算法。

TAG標籤:iterator #