android - stream() 方法在 android 中不起作用

标签 android android-studio collections lambda java-8

如何将此语句从经典 java 转换为 android

Collection<Integer> p1;   
int sum = p1.stream().mapToInt(Integer::intValue).sum();

我将 Java 8 和 lambda 集成到我的 android 应用程序中,但它仍然无法运行。在 android 中找不到方法 stream()。

你能帮帮我吗?

最佳答案

您可以使用 streamsupport将流 API 向后移植到 Java 6/7 的库,可用于 Android 开发,支持所有设备。

Afaik,这个库完全向后移植了 Java 8 中存在的原始实现,并使其在单独的包中可用(前缀为 java8.)。 Collection 接口(interface)上添加的默认方法(例如#stream()、#forEach())可从单独的实用程序类获得,例如Iterables 或 StreamSupport。

关于android - stream() 方法在 android 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37854239/

相关文章:

android - "RuntimeException: Performing pause of activity that is not resumed"

android - 在谷歌地图android api v2中设置最大缩放级别

android - 如何将现有的 android 项目推送到组织的存储库?

android - 此版本的 Android Studio 无法打开此项目,请使用 Android Studio 4.0 或更新版本重试

algorithm - 我可以使用什么结构将唯一键映射到唯一值?

java - 为什么在使用线程添加值后从 ArrayList 获取空值

android - RecyclerView 存储/恢复 Activity 之间的状态

android - Weinre 上的匹配 CSS

opencv - 在 Android 中使用 OpenCV 查找图像匹配

java - 有没有办法清除 arraylist 但不尊重内存引用?