如何在Java 8 中从 Stream 中获取 ArrayList
给定一个 Stream,任务是在Java 8 中将此 Stream 转换为 ArrayList。
例子:
Input: Stream: [1, 2, 3, 4, 5]
Output: ArrayList: [1, 2, 3, 4, 5]
Input: Stream: ['G', 'e', 'e', 'k', 's']
Output: ArrayList: ['G', 'e', 'e', 'k', 's']
- 使用 Collectors.toList() 方法:
- 获取要转换的 Stream。
- 使用 collect() 和 Collectors.toList() 方法将流收集为 List。
- 将此列表转换为 ArrayList
- 返回/打印 ArrayList
下面是上述方法的实现:
程序:
// Java program to convert Stream to ArrayList // using Collectors.toList() method import java.util.*; import java.util.stream.*; public class GFG { // Function to get ArrayList from Stream public static
ArrayList getArrayListFromStream(Stream stream) { // Convert the Stream to List List list = stream.collect(Collectors.toList()); // Create an ArrayList of the List ArrayList arrayList = new ArrayList (list); // Return the ArrayList return arrayList; } // Driver code public static void main(String args[]) { Stream stream = Stream.of(1, 2, 3, 4, 5); // Convert Stream to ArrayList in Java ArrayList arrayList = getArrayListFromStream(stream); // Print the arraylist System.out.println("ArrayList: " + arrayList); } } 输出:ArrayList: [1, 2, 3, 4, 5]
- 使用 Collectors.toCollection() 方法:
方法:- 获取要转换的 Stream。
- 使用 collect() 和 Collectors.toCollection() 方法将流收集为 ArrayList。
- 返回/打印 ArrayList
下面是上述方法的实现:
程序:
// Java program to convert Stream to ArrayList // using Collectors.toList() method import java.util.*; import java.util.stream.*; public class GFG { // Function to get ArrayList from Stream public static
ArrayList getArrayListFromStream(Stream stream) { // Convert the Stream to ArrayList ArrayList arrayList = stream .collect(Collectors .toCollection(ArrayList::new)); // Return the ArrayList return arrayList; } // Driver code public static void main(String args[]) { Stream stream = Stream.of(1, 2, 3, 4, 5); // Convert Stream to ArrayList in Java ArrayList arrayList = getArrayListFromStream(stream); // Print the arraylist System.out.println("ArrayList: " + arrayList); } } 输出:ArrayList: [1, 2, 3, 4, 5]