迭代器的工作原理
阿新 • • 發佈:2018-12-26
//建立一個單列集合
//LinkedList連結串列集合
//List介面
//建立一個指向自己介面的引用物件,建立了LinkedList類的物件後把它上溯到了list介面,現在它是list的物件,多型的實現。
List list=new LinkedList();
list.add("1");
list.add("2");
list.add("3");
//獲取當前集合的迭代器
Iterator it =list.iterator();
第一種 While迴圈
//判斷迭代器下一個位置上有木有元素
while(it.hasNext()){
//返回當前迭代的元素
System.out.println(it.next());
}
第二種for迴圈
//判斷迭代器下一個位置上有木有元素
for(;it.hasNext();){
//返回當前迭代的元素
System.out.println(it.next());
}
如果用迭代器 的話,建議用While迴圈寫,如果用for迴圈寫,對記憶體的優化不夠。
it.remove();//刪除當前迭代器指向的元素。最後列印長度為0。 重點:進行remove之前 必須呼叫it.next();方法,因為這個方法是刪除當前迭代器指向的元素
//在迭代器迭代的過程中不允許對迭代器物件進行任何操作,否則會引發安全隱患