Nir*_*ane 3 java-8 java-stream
我们如何从 Stream.collect() 方法创建一些具体的集合类型
例如,对于下面的示例,我想创建 LinkedList 而不是通用列表。
List<Integer> list = Arrays.asList(10,20,30,40);
List<Integer> collect3 = list.stream().filter(i ->i%2==0).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
我该如何指定,我需要创建LinkedList
小智 6
您可以使用构造函数引用、LinkedList::new 和 Collectors.toCollection 方法。
list.stream().filter(i ->i%2==0).collect(Collectors.toCollection(LinkedList::new))
Run Code Online (Sandbox Code Playgroud)