List集合特有的迭代器,ListIterator是Iterator的子接口
在迭代時,不可以通過集合對象的方法操作集合中的元素。
因爲會發生併發修改異常。
所以,迭代時,只能用迭代器的方法操作元素,可是Iterator方法是有限的。
只能進項刪除 判斷取出操作
如果需要添加 修改等操作,就需要使用其子類接口Listiterator
Listerator只能通過ListIterator獲取
import java.util.*;
/*
boolean hasPrevious()
如果以逆向遍歷列表,列表迭代器有多個元素,則返回 true。
E previous()
返回列表中的前一個元素。
*/
class demo
{
public static void main(String [] args)
{
ArrayList al=new ArrayList();
al.add("java02");
al.add("java03");
al.add("java04");
sop("原集合 :"+al);
ListIterator lit=al.listIterator();
// sop("hasPrevious " +lit.hasPrevious());
while(lit.hasNext())
{
Object obj=lit.next();
if(obj.equals("java03"))
{
lit.set("java05");
}
}
while(lit.hasPrevious())
{
sop("previous :"+lit.previous());
}
// sop("hasNext "+lit.hasNext());
// sop("hasPrevious " +lit.hasPrevious());
sop("改變後集合 ;"+al);
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}