使用Java Stream 在单行中使用指定值初始化列表
给定一个值N ,任务是使用 Stream 在Java中的单行中创建一个具有该值 N 的列表。
例子:
Input: N = 5
Output: [5]
Input: N = GeeksForGeeks
Output: [GeeksForGeeks]
方法:
- 获取值 N
- 使用 generate() 方法生成流
- 使用 limit() 方法将要创建的 List 的大小设置为 1
- 使用 map() 方法传递要映射的值
- 使用 Collectors.toList() 将生成的流转换为 List 并使用 collect() 方法收集返回
下面是上述方法的实现:
// Java program to initialize a list in a single
// line with a specified value using Stream
import java.io.*;
import java.util.*;
import java.util.stream.*;
class GFG {
// Function to create a List
// with the specified value
public static List createList(T N)
{
// Currently only one value is taken
int size = 1;
return Stream
// Generate the Stream
.generate(String::new)
// Size of the List to be created
.limit(size)
// Passing the value to be mapped
.map(s -> N)
// Convert the generated stream into List
.collect(Collectors.toList());
}
// Driver code
public static void main(String[] args)
{
int N = 1024;
System.out.println("List with element "
+ N + ": "
+ createList(N));
String str = "GeeksForGeeks";
System.out.println("List with element "
+ str + ": "
+ createList(str));
}
}
输出:
List with element 1024: [1024]
List with element GeeksForGeeks: [GeeksForGeeks]