Java 一个迭代器对象如何用来迭代一个列表

Java 一个迭代器对象如何用来迭代一个列表

List接口扩展了Collection接口,表示存储一系列元素的集合。列表的用户可以精确控制元素插入的位置。这些元素可以通过它们的索引访问并进行搜索。ArrayList是Java开发者中最流行的List接口实现。

List接口提供了两种类型的迭代器对象。第一种是Iterator,第二种是ListIterator。在这篇文章中,我们将讨论这两种类型的迭代器以及相应的示例。

iterator()方法

iterator()方法返回一个用于迭代元素的Iterator对象。

Iterator<E> iterator()

按正确顺序返回此列表中元素的迭代器。

下面的代码片段显示了迭代器的使用。

Iterator<Integer> iterator = list.iterator();
while(iterator.hasNext()) {
   System.out.print(iterator.next() + " ");
}

listIterator() 方法

listIterator() 方法返回一个更灵活的迭代器。除了 Iterator 接口提供的常规操作外,它还允许元素插入、替换和双向访问。

ListIterator<E> listIterator()

下面的代码片段展示了使用listIterator的方法。使用listIterator从列表中迭代其元素。

ListIterator<Integer> iterator = list.listIterator();
while(iterator.hasNext()) {
   System.out.print(iterator.next() + " ");
}

示例1

下面是一个使用iterator()方法迭代列表的示例 –

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

public class CollectionsDemo {
   public static void main(String[] args) {
      List<Integer> list = new ArrayList<>(Arrays.asList(1,2,3,4,5));
      Iterator<Integer> iterator = list.iterator();
      while(iterator.hasNext()) {
         System.out.print(iterator.next() + " ");
      }
   }
}

输出

这将产生以下结果-

1 2 3 4 5

示例2

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.ListIterator;

public class CollectionsDemo {
   public static void main(String[] args) {
      List<Integer> list = new ArrayList<>(Arrays.asList(1,2,3,4,5));
      ListIterator<Integer> iterator = list.listIterator();
      while(iterator.hasNext()) {
         System.out.print(iterator.next() + " ");
      }
   }
}

输出

这将产生以下结果−

1 2 3 4 5

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程