Iterator只能从前往后遍历,而且每个迭代器只能用一次,因为遍历一次那个指针就在最后了
如图:这里我只画了三次,知道没有下一个了遍历就结束

ListIterator可以从后往前遍历
提示,以下代码先要从前往后遍历,再从前往后遍历
//双向迭代
ListIterator<Integer> listIterator = arrayList.listIterator();
while (listIterator.hasNext()) { //是否有下一个
Integer next = listIterator.next(); //取出下一个
System.out.println(next);
}
while (listIterator.hasPrevious()) { //是否有上一个
Integer previous = listIterator.previous(); //取出上一个
System.out.println(previous);
}
本文详细解析了Iterator和ListIterator在遍历集合方面的差异。Iterator仅支持单向向前遍历,且每次遍历后指针停留在末尾,无法再次使用。而ListIterator不仅支持双向遍历,还能重复遍历集合元素。通过示例代码展示了如何使用ListIterator进行双向迭代。
964





