如何使用迭代器对象在 Java 中迭代列表?

javaobject oriented programmingprogramming更新于 2025/2/5 3:24:17

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

相关文章


有用资源