【发布时间】:2017-04-14 18:32:42
【问题描述】:
我有一组整数,我想计算我的流包含的max() 整数的数量。 max() 方法来自 Stream API。
我想要这样的事情
int count = Arrays.stream(myIntArray)
.filter(i -> i == max())
.count();
System.out.printf("Count: %d", count);
我无法从我的 forEach() 方法中调用 max() 方法,因为 Streams 不是这样运行的 - 那么我该怎么做才能使它工作?
【问题讨论】:
-
max()返回什么? -
@m_callens
max()返回数组 Stream 中最大的 Integer。 -
是调用属于流的max方法还是自己自定义的max方法?
-
我正在尝试在 Stream API 中使用 max() 方法,抱歉。这还不够清楚。
-
@Aphex 你知道你不能在 lambda 中使用“count”,因为它必须是“final”才能被允许,并且当声明为“final”时你不能更改“count”的值"。
标签: java java-8 java-stream