使用java8流API时
.stream().map(mapper)
是否需要在apply(T t)
java.util.function.Function<T,R>
方法中实现null
检查t
输入apply(T t)
?或者,即使我的null
- ed stream()
包含Collection
s,也可以保证null
方法永远不会使用 .stream().map(mapper)
参数调用吗?
换句话说,
null
允许将apply(T t)
值传递到NullPointerException
并且不会抛出Content-Range
?
答案 0 :(得分:3)
这取决于您是否期望null
作为输入。通常,您会希望避免使用null
是一个流(或抛出检查异常)。你可以做到
list.stream()
.filter(x -> x != null)
.... do more
如果你这样做,请注意
Stream.of("hi", null).forEach(System.out::println);
将打印
hi
null