我最近开始使用Java 8的Stream API,我认为它对Java有很大的贡献。但是,我不明白为什么它按原样实现。
Java 8中另一个最精彩的功能之一是接口中的默认方法,它允许对接口进行默认实现。使用这些,Collection接口可以被赋予通过流API提供的所有方法以及默认实现,同时向后兼容。它将允许更简单的语法,更像是.NET中的LINQ,但也允许实现类型来覆盖这些方法的行为。它不需要每次都调用stream()方法,并且需要始终使用collect()方法。
我知道这是一个非常普遍的问题,但对我而言,Java 8的开发人员似乎做出了一个非常不幸的选择,很难解决。