如何使用Java 7或更早版本实现Java 8 Stream API?

时间:2017-11-06 10:10:21

标签: java-8 java-stream

我在求职面试中被问到这个问题(微软) 例如,实施的方法:
  .stream(),. filter(),. map(),flatMap(),min(),count(),reduce(),groupBy()

这是一个非常开放的问题,但我认为这是一个有趣的问题。

由于

3 个答案:

答案 0 :(得分:4)

在Java7和Java6项目中获得使用StreamAPI能力的一种方法是添加一个streamsupport库https://github.com/streamsupport/streamsupport Streamsupport是Java 8 java.util.function(功能接口)和java.util.stream的后端。 (streams)Java 6或7用户的API

答案 1 :(得分:2)

以下是一个很好的例子:Lightweight-Stream-API。它通过迭代器实现几乎所有Android / Java 7的流API。

答案 2 :(得分:0)

我不会浪费时间自己创建这些功能,因为它也意味着非常严格的测试。我宁愿使用Kotlin。它适用于从6开始的任何Java,并具有所有这些功能(包括lambdas)以及许多其他功能。此外,它提供了与核心Java的良好兼容性,部分解决了泛型实现的缺陷。