Java 中遍历列表

Mohammad Irfan 2023年10月12日
  1. 在 Java 中使用 for 循环迭代列表元素
  2. 在 Java 中使用 for-each 循环迭代列表元素
  3. 在 Java 中使用 while 循环迭代列表元素
  4. 在 Java 8 中使用 forEach() 方法迭代列表元素
  5. 在 Java 8 中使用 forEach()stream 方法迭代列表元素
  6. 使用 Java 中的 apache 库迭代列表元素
  7. 在 Java 中使用 join() 方法迭代列表元素
  8. 在 Java 中使用 map() 方法迭代列表元素
Java 中遍历列表

本教程介绍了如何遍历 Java 中的列表,并列出了一些示例代码来理解该主题。

列表是 Java 中的一个接口,具有多个实现类,例如 ArrayListLinkedList 等。我们可以使用这些类来存储数据。列表用作动态数组,当元素数量增加时,其大小也会增加。

有几种方法可以迭代 Java 中列表的所有元素。例如,for 循环,for-each 循环,使用列表或流的 forEach() 方法等。让我们来看一些示例。

在 Java 中使用 for 循环迭代列表元素

我们可以使用经典的 for 循环来分别迭代每个元素。for 循环也可以很好地与对象和原始值一起使用。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    for (int i = 0; i < list.size(); i++) {
      String element = list.get(i);
      System.out.println(element);
    }
  }
}

输出:

India
US
China
Russia

在 Java 中使用 for-each 循环迭代列表元素

我们可以使用 for-each 循环分别打印每个元素。for-each 循环可与对象的容器(如列表,Set 等)一起正常工作。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    for (String country : list) {
      System.out.println(country);
    }
  }
}

输出:

India
US
China
Russia

在 Java 中使用 while 循环迭代列表元素

作为 for 循环,我们可以使用 while 循环来迭代 Java 中的列表元素。我们使用 get() 方法获取元素并打印元素。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    while (!list.isEmpty()) {
      String element = list.get(0);
      list = list.subList(1, list.size());
      System.out.println(element);
    }
  }
}

输出:

[India, US, China, Russia]

在 Java 8 中使用 forEach() 方法迭代列表元素

如果你使用的是 Java 8 或更高版本,请使用 forEach() 方法来打印列表的元素。它以方法引用作为参数。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.forEach(System.out::println);
  }
}

输出:

India
US
China
Russia

在 Java 8 中使用 forEach()stream 方法迭代列表元素

如果你使用的是流 API,请使用 stream()forEach() 来打印所有列表元素。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.stream().forEach(System.out::println);
  }
}

输出:

India
US
China
Russia

使用 Java 中的 apache 库迭代列表元素

如果你正在使用 apache 库,请使用 ArrayUtils 类打印所有列表元素。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.ArrayUtils;
public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    System.out.println(ArrayUtils.toString(list));
  }
}

输出:

{India,US,China,Russia}

在 Java 中使用 join() 方法迭代列表元素

如果要将所有元素打印为单个字符串,则可以使用 join() 方法来联接列表中的每个元素,并使用 print() 方法来打印它们。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    System.out.print(String.join("\n", list));
  }
}

输出:

India
US
China
Russia

在 Java 中使用 map() 方法迭代列表元素

这是将流 API 的 map() 方法与 forEach() 一起使用的另一种方法。map() 方法可用于传递 lambda 表达式以相应地打印元素。请参见下面的示例。

import java.util.ArrayList;
import java.util.List;
public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.stream().map(x -> x).forEach(System.out::println);
  }
}

输出:

India
US
China
Russia

相关文章 - Java List