假設我正在遍歷java中的一個集合,在java中多次使用同一集合上的迭代器
Iterator<_someObject_> it = _someObject_.iterator();
好吧,首先我想通過集合中的每個對象並對每個訪問的對象進行更改。於是我就用:
while(it.hasNext()) {
_someObject_ = it.next();
_someObject_.add3(); //made up method
}
現在,我已經做到了這一點,我決定我想通過從開始整組迭代完成一次開展對他們的另一種方法,因爲我剛剛做通過我的第一次迭代更改每個元素。
我能再使用
while(it.hasNext())
?
我想也許迭代器有一個指針,所以一旦它達到第一次運行的最後一個元素,如果我再次調用while(it.hasNext())
,指針仍然會在該集合的末尾,這意味着我的第二個while循環將會是無意義。
你爲什麼不寫一個簡單的測試,你可以感覺到自己是否能正常工作的滿意度。 – Buhb 2011-05-01 14:18:40