如何使用Java 8流将列表中的值相乘

流中是否有一个sum()等效方法可以执行流中给定值的乘法?

我有一个这样的整数列表:

List<Integer> listOfIntegers = new ArrayList<>();

listOfIntegers.addAll(Arrays.asList(1,4,2,7,5));

我能够获取所有整数的总和,但是无法找到可以将值相乘并给出输出的API。

listOfIntegers.stream().mapToInt(a -> a).sum();

如果我尝试使用forEach进行操作,那么我将无法存储结果,因为仅允许在其中使用最终变量。

除此之外,还有其他选择吗?

回答:

尝试减少流,它应该有所帮助。

喜欢:

listOfIntegers.stream().reduce(1, (a, b) -> a * b)

此链接提供有关如何使用reduce的更多信息。

以上是 如何使用Java 8流将列表中的值相乘 的全部内容, 来源链接: utcz.com/qa/427298.html

回到顶部