【发布时间】:2017-01-23 17:04:46
【问题描述】:
我在这里读过post。但我仍然无法在 minSdkVersion
List<Car> newCars = cars.stream()
.filter(s -> s.getColor().equals("red"))
.collect(Collectors.toList());
由于错误消息而无法运行
调用需要 API 级别 24(当前最低为 15):java.util.Collection#stream
那么有人知道解决方案吗?
【问题讨论】:
-
不,您不能使用低于 api 24 的 java 流。有 3rd 方库可以实现相同的功能
-
我有一个小型库,可以为较低的 api 做类似的事情:github.com/smaspe/FunctionalIterables
-
@PEMapModder 您可以使用针对 Android 的新 Jack 编译器使用 lambda 表达式和方法引用,最早可以追溯到 Gingerbread。您在 SDK 24 下不能拥有的是默认/静态接口方法和 Java 8 特定 API,例如 Stream API。
-
API 24 下可以使用 StreamSupport 类
标签: java android java-8 java-stream