版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/guyan1111/article/details/70313319
ListIterator 迭代器继承于Iterator.
public interface ListIterator extends Iterator
---|Iterator
hasNext()
next()
remove()
------| ListIterator Iterator子接口List专属的迭代器
add(E e) 将指定的元素插入列表(可选操作)。该元素直接插入到next返回的下一个元素的前面(如果有)
void set(E o) 用指定元素替换 next 或 previous 返回的最后一个元素
hasPrevious() 逆向遍历列表,列表迭代器有多个元素,则返回true。
previous() 返回列表中的前一个元素。 public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add("111");
list.add("222");
list.add("333");
list.add("444");
System.out.println(list);
//迭代显示
ListIterator lit = list.listIterator();
while(lit.hasNext()){
String str = (String) lit.next();
System.out.print(str+" ");
}
System.out.println("*****************");
//倒序遍历,不可直接倒序,要先定位到最后一个才可以使用倒序。否则无输出
while(lit.hasPrevious()){
String st = (String)lit.previous();
System.out.print(st+" ");
}
//使用set替换next或Previous返回的最后一个元素
lit.next();//111
lit.next();//222
System.out.println(lit.next());//333
lit.set("000");
System.out.println(list);
//定位到第一个元素
while(lit.hasPrevious()){
String st = (String)lit.previous();
System.out.print(st+" ");
}
//add方法将指定的元素插入列表,该元素直接插入到 next 返回的元素的后
lit.next();
lit.add("666");
System.out.println(list);
}