Java.util.ArrayList 类

java.util.ArrayList.listIterator() 方法返回对此列表中元素的列表迭代器(按正确的顺序) ),从列表中的指定位置开始。指定的索引指示对 next 的初始调用将返回的第一个元素。对 previous 的初始调用将返回指定索引减一的元素。

语法

public ListIterator<E> listIterator(int index)

这里,E 是容器维护的元素类型。

参数

index 指定要从列表迭代器返回的第一个元素的索引。

返回值

返回列表中元素的列表迭代器(以正确的顺序),从列表中的指定位置开始。

异常

如果索引超出范围(索引 < 0 || 索引 > size()),则抛出 IndexOutOfBoundsException

示例:

在下面的示例中,java.util.ArrayList.listIterator() 方法返回给定列表元素的列表迭代器,从在指定位置。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {
    //创建一个ArrayList
    ArrayList<Integer> MyList = new ArrayList<Integer>();

    //填充ArrayList
    for(int i = 1; i <= 5; i++)
      MyList.add(i*10);

    //打印ArrayList的内容
    System.out.println("MyList contains: " + MyList);

    //创建从指定索引开始的listIterator
    ListIterator itr1 = MyList.listIterator(3);
    ListIterator itr2 = MyList.listIterator(4);

    //正向遍历
    System.out.println("Forward Traversal: ");
    while(itr1.hasNext())
      System.out.println(itr1.next()); 

    //向后遍历
    System.out.println("Backward Traversal: ");
    while(itr2.hasPrevious())
      System.out.println(itr2.previous()); 
  }
}

上述代码的输出将是:

MyList contains: [10, 20, 30, 40, 50]
Forward Traversal: 
40
50
Backward Traversal: 
40
30
20
10