如何遍历 Java List?

javaobject oriented programmingprogramming更新于 2025/2/4 19:24:17

List 接口扩展了 Collection,并声明了存储元素序列的集合的行为。列表的用户对于在列表中插入元素的位置具有相当精确的控制。这些元素可以通过其索引访问,并且可以搜索。ArrayList 是 List 接口最流行的实现。

Java List 可以使用多种方式进行迭代。在本文中,我们将讨论迭代列表的各种方法和相应的示例。

方法 #1

使用 for/while 循环迭代 List 并按索引获取元素。

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.iterator();
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

下面是另一个示例,展示了使用 listIterator、forEach 和 streams 方法来迭代列表 −

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> listIterator = list.listIterator();
     
      while(listIterator.hasNext()) {
         System.out.print(listIterator.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

相关文章


有用资源