一个技术原因,虽然不是很理想,但可能是为什么没有做到这一点。您不能在Java中重载泛型类型。
他们需要支持
Stream.flatMap(Function<Object, Stream<X>> function)
这意味着他们不能用
Stream.flatMap(Function<Object, Collection<X>> function)
因为这两种方法在擦除后具有相同的签名。
他们可以添加一个方法
Stream.flatMapCollection(Function<Object, Collection<X>> function)
要么
Stream.flatMapIterable(Function<Object, Iterable<X>> function) Stream.flatMapI(Function<Object, Iterable<X>> function)
但这不会很漂亮。



