在 Java 中初始化 ArrayList
Hassan Saeed
2023年10月12日
-
在 Java 中使用
Arays.asList
初始化一个 ArrayList -
在 Java 中使用
new ArrayList()
初始化一个 ArrayList -
在 Java 中使用
List.of()
初始化一个 ArrayList -
在 Java 中使用
Stream
初始化一个 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]
cities
和 cities_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 的方法。