Java 8 流立即求和并计数

标签 java java-stream average

如何使用 Java 8 流来计算流元素的平均值? 因为我不能两次使用一个流,所以我必须在一次迭代中完成它。 该流包含保存浮点值的自定义 bean。流中的元素数量可能会有所不同。 因此,我想将流中所有元素的浮点值相加,然后除以流中元素的数量。

更新: 最后,我需要流中所有元素的总和以及流中所有元素的平均值。

最佳答案

将您的 Stream 转换为 DoubleStream 并调用 average() 计算平均值:

OptionalDouble average = yourStream.mapToDouble(YourStreamElementClass::getFloatValue).average();

如果您想要其他统计信息(例如最大值、最小值、元素数量等...),您可以调用 summaryStatistics() 而不是 average().

关于Java 8 流立即求和并计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57757572/

相关文章:

java - 计算大数的加权平均值

java - Uberjar 中止,因为 jar 失败 : duplicate entry: META-INF/MANIFEST. MF

java - 在 eclipse-ubuntu 中使用 OpenCV 的正确 native 库路径是什么

java - i == (i = 2) 的结果是什么?

java - Integer类型List的方法引用

MySql 返回不正确的 AVG

java - 计算密码时的 32 位 64 位差异

java - 合并后以特殊顺序合并 3 个列表(使用 Streams)

java - 按一个字段进行流式分组,然后合并所有其他字段

python - 使用 NumPy 平均来自 Python 中两个配对列表的重复值