使用 ListIterator 反向遍历 Java 中的 ArrayList


ListIterator 可用于遍历 List Collection 中正向和反向的元素。因此,ListIterator 仅适用于 LinkedList、ArrayList 等类。

ListIterator 中的 hasPrevious( ) 方法如果反向遍历时 List 中还有更多元素则返回 true,否则返回 false。previous( ) 方法返回 List 中的前一个元素并将光标位置向后减小。

以下给出一个对此进行演示的程序 -

示例

 在线演示

import java.util.ArrayList;
import java.util.ListIterator;
public class Demo {
   public static void main(String[] args) {
      ArrayList<String> aList = new ArrayList<String>();
      aList.add("Amanda");
      aList.add("Peter");
      aList.add("Julie");
      aList.add("James");
      aList.add("Emma");
      ListIterator<String> li = aList.listIterator();
      while (li.hasNext()) {
         li.next();
      }
      System.out.println("The ArrayList elements in the reverse direction are: ");
      while (li.hasPrevious()) {
         System.out.println(li.previous());
      }
   }
}

输出

The ArrayList elements in the reverse direction are:
Emma
James
Julie
Peter
Amanda

现在,让我们了解一下上面的程序。

创建了 ArrayList,并使用 ArrayList.add() 将元素添加到 ArrayList 中。演示此操作的代码片段如下 -

ArrayList<String> aList = new ArrayList<String>();
aList.add("Amanda");
aList.add("Peter");
aList.add("Julie");
aList.add("James");
aList.add("Emma");

然后使用 ListIterator 接口按反向显示 ArrayList 元素。演示此操作的代码片段如下 -

ListIterator<String> li = aList.listIterator();
while (li.hasNext()) {
   li.next();
}
System.out.println("The ArrayList elements in the reverse direction are: ");
while (li.hasPrevious()) {
   System.out.println(li.previous());
}

更新于: 30-7 月 -2019

1 千+ 浏览

开启您的 职业生涯

完成课程后获得认证

开始
广告