ListIterator()迭代器指向问题!
import java.util.*;
public class ListIteratorDemo{
public static void main(String[] args) {
List list1 = new ArrayList();
list1.add("one");
list1.add("two");
list1.add("three");
ListIterator it = list1.listIterator();
while(it.hasNext())
{ System.out.println("next()element = "+it.nextIndex());
System.out.println("next()element = "+it.next());
}
while(it.hasPrevious())
{ System.out.println("Previous()element = "+it.previousIndex());
System.out.println("Previous()element = "+it.previous());
}
}
}
输出结果是:
next()element = 0
next()element = one
next()element = 1
next()element = two
next()element = 2
next()element = three
Previous()element = 2
Previous()element = three
Previous()element = 1
Previous()element = two
Previous()element = 0
Previous()element = one
我不明白的是 第1个while循环 迭代器应该已经指向了 最后1个元素 也就是three 索引号2 这个元素
那么到了第2个while循环的首个Previous()应该指向到two 索引号1这个元素才对呀..也就是 第2个循环只输出2个元素才对? 为什么还能输出3个呢?
JAVA新手..CSDN的高手们教我下吧..