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