List接口中提供了ListIterator<E> listIterator()這樣的一個方法,可以獲得一個ListIterator接口的實例,如下:
看一下他的方法:
了解了這些之后再看如下Demo:
package cn.itek.thinkingInJavaTest; import java.util.*; /** * @ClassName: IteratorTest1 * @Description: 反向遍歷list集合 * @author Kingram * @date 2018年7月26日 * */ public class IteratorTest { public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>(); // 向集合中添加元素 for (int i = 0; i < 10; i++) { list.add(i); } Iterator<Integer> it = list.iterator(); System.out.print("ArrayList集合中的元素為:"); while (it.hasNext()) { System.out.print(it.next() + " "); } System.out.println(); System.out.println("逆序后為:"); ListIterator<Integer> li = list.listIterator(); // 將游標定位到集合的結尾 while (li.hasNext()) { li.next(); } // 迭代器遍歷hasPrevious()方法用於反向遍歷的時候判斷是否還有下一個元素 while (li.hasPrevious()) { System.out.print(li.previous() + " "); } } }