java使用iterator

鴨脖發表於2012-07-10

要重新開始學習java了,希望在第二遍學習的時候能收穫更多的東西。

回想一下你遍歷容器每一個元素的方法。我想大部分人都會說是for一個迴圈,如果是陣列的話可以使用.length屬性來遍歷,在c++中陣列還沒有這個屬性。在js和python中都是有的。那麼現在我要逐步學會使用iterator了,因為這個很方便。


使用iterator你可以在一個容器中檢視和刪除某一個元素,但是不能增加某一個元素。

首先你必須獲得一個容器的iterator,方法很簡單,

Iterator it=container.itertor();

其中container是某個容器物件。這個時候it沒有指向容器中的任何元素,只是在容器嘴開始的位置,所以要想訪問元素必須使用iterator的方法,他又三個方法,分別是:


hasNext 判斷是否還有元素

next 返回正指向的物件

remove 刪除當前正指向的元素


注意container可以是任何容器型別,包括set,list和map,當然map需要先通過keyset方法返回關鍵字集合,然後通過遍歷每一哥key來訪問每一哥物件


基本結構就是這樣:

Iterator it = container.iterator()

while(it.hasNext()){

      通過iterator的next方法返回物件並且執行相應的操作

}

相關文章