在 Java 中初始化 ArrayList

Hassan Saeed 2023年10月12日
  1. 在 Java 中使用 Arays.asList 初始化一个 ArrayList
  2. 在 Java 中使用 new ArrayList() 初始化一个 ArrayList
  3. 在 Java 中使用 List.of() 初始化一个 ArrayList
  4. 在 Java 中使用 Stream 初始化一个 ArrayList
在 Java 中初始化 ArrayList

本教程讨论了在 Java 中一行行初始化一个带值的 ArrayList 的方法。它对于测试和最小化编码非常方便。

在 Java 中使用 Arays.asList 初始化一个 ArrayList

在 Java 中,用一行初始值初始化一个列表而不是一个 ArrayList 相对来说比较容易。但是,如果需要的话,可以将其转换为 ArrayList。下面的例子说明了这两种方式。

import java.util.*;

public class Main {
  public static void main(String[] args) {
    // Initialize a list
    List<String> cities = Arrays.asList("Amsterdam", "Paris", "London");

    // Initialize an ArrayList
    ArrayList<String> cities_AL = new ArrayList<>(Arrays.asList("Amsterdam", "Paris", "London"));

    System.out.println(cities);
    System.out.println(cities_AL);
  }
}

输出:

[Amsterdam, Paris, London]
[Amsterdam, Paris, London]

citiescities_AL 的唯一区别是一个是 List,另一个是 ArrayList

在 Java 中使用 new ArrayList() 初始化一个 ArrayList

另一种初始化 ArrayList 的方法是使用 new ArrayList() 函数。你可以在一行代码中预先分配所有的值。

import java.util.*;

public class Main {
  public static void main(String[] args) {
    // Pre assign the values
    ArrayList<String> cities = new ArrayList<String>() {
      {
        add("Amsterdam");
        add("Paris");
        add("London");
      }
    };

    System.out.println(cities);
  }
}

输出:

[Amsterdam, Paris, London]

在 Java 中使用 List.of() 初始化一个 ArrayList

在 Java9 或更高版本中,我们可以使用 List.of() 方法代替 Arrays.asList() 来初始化 Java 中的 ArrayList。下面的例子说明了这一点。

import java.util.*;

public class Main {
  public static void main(String[] args) {
    // Initialize a List
    List<String> strings = List.of("foo", "bar", "baz");
    System.out.println(strings);

    // Initialize an ArrayList
    ArrayList<String> strings_a = new ArrayList<>(List.of("foo", "bar", "baz"));
    System.out.println(strings_a);
  }
}

输出:

[foo, bar, baz]
[foo, bar, baz]

在 Java 中使用 Stream 初始化一个 ArrayList

我们也可以在 Java 中使用 Stream 来初始化一个 ArrayList。下面的例子说明了这一点。

import java.util.*;
import java.util.stream.*;
public class Main {
  public static void main(String[] args) {
    ArrayList<String> places = new ArrayList<>(
        Stream.of("Buenos Aires", "Córdoba", "La Plata").collect(Collectors.toList()));

    System.out.println(places);
  }
}

输出:

[Buenos Aires, Córdoba, La Plata]

在本文中,我们已经讨论了几种在 Java 中用一行预赋值初始化 ArrayList 的方法。

相关文章 - Java ArrayList