我的问题很简短,为什么不编译?
null
问题出现在final ArrayList <Integer> list = IntStream.rangeClosed(1, 20).boxed().collect(Collectors.toList());
部分。
答案 0 :(得分:3)
Collectors.toList()
会返回一些List
实现,但不一定是ArrayList
,可能不是。{/ p>
尝试
final List <Integer> list = IntStream.rangeClosed(1, 20)
.boxed()
.collect(Collectors.toList());
如果您特别需要collect(Collectors.toCollection(ArrayList::new))
,则可以使用ArrayList
。
final ArrayList <Integer> list = IntStream.rangeClosed(1, 20)
.boxed()
.collect(Collectors.toCollection(ArrayList::new));