Java中的ArrayList listIterator()方法及示例

Java中的ArrayList listIterator()方法及示例

listIterator()

listIterator() 方法是 java.util.ArrayList 类的一个方法,用于返回此列表中元素的一个列表迭代器(按正确顺序)。返回的列表迭代器是 fail-fast 的。

语法:

public ListIterator listIterator()

返回值: 此方法返回此列表中元素的一个列表迭代器(按正确顺序)。

以下是说明 listIterator() 方法的示例。

示例 1:

// Java program to demonstrate
// listIterator() method
// for String value
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {
  
            // Creating object of ArrayList<Integer>
            ArrayList<String>
                arrlist = new ArrayList<String>();
  
            // adding element to arrlist
            arrlist.add("A");
            arrlist.add("B");
            arrlist.add("C");
            arrlist.add("D");
  
            // print arrlist
            System.out.println("ArrayList:"
                               + arrlist);
  
            // Creating object of ListIterator<String>
            // using listIterator() method
            ListIterator<String>
                iterator = arrlist.listIterator();
  
            // Printing the iterated value
            System.out.println("\nUsing ListIterator:\n");
            while (iterator.hasNext()) {
                System.out.println("Value is:"
                                   + iterator.next());
            }
        }
  
        catch (NullPointerException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}
ArrayList:[A,B,C,D]

Using ListIterator:

Value is:A
Value is:B
Value is:C
Value is:D

listIterator(int index)

此方法用于返回此列表中元素启始于指定位置的列表迭代器(按正确顺序)。指定的索引表示初始调用next将返回的第一个元素。initial call to previous将返回指定索引减一的元素。返回的列表迭代器是fail-fast的。

语法:

public ListIterator listIterator(int index)

参数: 此方法需要一个元素的索引作为参数,该参数将从列表迭代器返回(通过调用next)。

返回值: 此方法返回此列表中元素起始于指定位置的列表迭代器(按正确顺序)。

异常: 如果索引超出范围(索引大于等于size()),则此方法会抛出 IndexOutOfBoundsException

以下是说明listIterator()方法的示例。

示例 1:

// Java程序演示listIterator()方法
// 用于字符串值

import java.util.*;

public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {

            //创建ArrayList对象
            ArrayList arrlist = new ArrayList();

            //将元素添加到arrlist中
            arrlist.add("A");
            arrlist.add("B");
            arrlist.add("C");
            arrlist.add("D");

            //输出arrlist 
            System.out.println("ArrayList: " + arrlist);

            //使用listIterator()方法从索引2开始获取迭代值
            ListIterator iterator = arrlist.listIterator(2);

            //打印迭代值
            System.out.println("\n从索引2使用ListIterator:\n");
            while (iterator.hasNext()) {
                System.out.println("Value is : " + iterator.next());
            }
        }

        catch (IndexOutOfBoundsException e) {
            System.out.println("抛出异常:" + e);
        }
    }
}
ArrayList: [A, B, C, D]

从索引2使用ListIterator:

Value is : C
Value is : D

示例2: 用于IndexOutOfBoundsException

// Java程序演示listIterator()方法
// 用于IndexOutOfBoundsException

import java.util.*;

public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {

            //创建ArrayList对象
            ArrayList arrlist = new ArrayList();

            //将元素添加到arrlist中
            arrlist.add("A");
            arrlist.add("B");
            arrlist.add("C");
            arrlist.add("D");

            //输出arrlist 
            System.out.println("ArrayList: " + arrlist);
            System.out.println("ArrayList大小: " + arrlist.size());

            //使用listIterator()方法从索引7开始获取ListIterator
            System.out.println("尝试从索引7获取ListIterator\n");

            ListIterator iterator = arrlist.listIterator(7);
        }

        catch (IndexOutOfBoundsException e) {
            System.out.println("抛出异常:" + e);
        }
    }
}
ArrayList: [A, B, C, D]
ArrayList大小: 4
尝试从索引7获取ListIterator

抛出异常:java.lang.IndexOutOfBoundsException: Index: 7

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程