如何迭代 Java 中的列表?


List 接口扩展了集合接口,表示存储元素序列的集合。列表的用户可以非常精确地控制要在列表中插入元素的位置。可以通过其索引访问这些元素,并且可以搜索这些元素。ArrayList 是 Java 开发人员中 List 接口最流行的实现。

有很多种迭代 Java List 的方法。以下列出其中一些方法 −

方法 1

使用 for/while 循环迭代列表并通过索引获取元素。

for(int i= 0; i < list.size(); i++) {
   System.out.println(list.get(i));
}

方法 2

使用 foreach 循环迭代元素列表。

for (Integer integer : list) {
   System.out.print(integer + " ");
}

方法 3

使用列表的迭代器来迭代其元素。

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

方法 4

使用列表的 listIterator 来迭代其元素。

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

方法 5

使用列表的 forEach 来迭代其元素。

list.forEach(i -> {System.out.print(i + " ");});

方法 6

使用列表流的 forEach 来迭代其元素。

list.stream().forEach(i -> {System.out.print(i + " ");});

现在,让我们在以下给出的示例中探讨上述迭代列表的方法 −

示例 1

以下示例显示了使用循环和迭代器方法迭代列表 −

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));
      for(int i= 0; i< list.size(); i++) {
         System.out.print(list.get(i) + " ");
      }
      System.out.println();
      for (Integer integer : list) {
         System.out.print(integer + " ");
      }
      Iterator<Integer> iterator = list.iterator();
      System.out.println();
      while(iterator.hasNext()) {
         System.out.print(iterator.next() + " ");
      }
   }
}

输出

这将产生以下结果 −

1 2 3 4 5
1 2 3 4 5
1 2 3 4 5

示例 2

以下示例显示了使用各种方法迭代列表 −

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> iterator1 = list.listIterator();
      while(iterator1.hasNext()) {
         System.out.print(iterator1.next() + " ");
      }
      System.out.println();
      list.forEach(i -> {System.out.print(i + " ");});
      System.out.println();
      list.stream().forEach(i -> {System.out.print(i + " ");});
   }
}

输出

这将产生以下结果 −

1 2 3 4 5
1 2 3 4 5
1 2 3 4 5

更新日期: 2022-5-26

5K+浏览

开启你的职业生涯

完成课程,获得认证

立即开始
广告