ListIterator可用于在LinkedList的正向和反向遍历元素。如果LinkedList中有更多元素同时沿相反方向遍历,则ListIterator中的hasPrevious()方法返回true,否则返回false。方法previous()返回LinkedList中的前一个元素,并向后减小光标位置。
演示该程序的程序如下。
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
public class Demo {
public static void main(String[] args) {
List l = new LinkedList();
l.add("John");
l.add("Sara");
l.add("Susan");
l.add("Betty");
l.add("Nathan");
ListIterator i = l.listIterator(l.size());
System.out.println("反向的 LinkedList 元素是: ");
while (i.hasPrevious()) {
System.out.println(i.previous());
}
}
}
输出结果
上面程序的输出如下
反向的 LinkedList 元素是: Nathan Betty Susan Sara John
现在让我们了解上面的程序。
创建LinkedList,并使用LinkedList.add()将元素添加到LinkedList。演示这的代码片段如下
List l = new LinkedList();
l.add("John");
l.add("Sara");
l.add("Susan");
l.add("Betty");
l.add("Nathan");
然后,使用ListIterator接口以相反的方向显示LinkedList元素。演示这的代码片段如下
ListIterator i = l.listIterator(l.size());
System.out.println("反向的 LinkedList 元素是: ");
while (i.hasPrevious()) {
System.out.println(i.previous());
}