Don';我们是否有java内置的方法来计算数字数组的平均值?
我正在检查并想知道JavaAPI中应该有一种方法来查找小数数组的平均值。但是找不到它。如果我们有输入,你能提供吗?如果没有,我想知道为什么,因为这是一个非常简单的方法 答复: 对于阵列:Don';我们是否有java内置的方法来计算数字数组的平均值?,java,arrays,Java,Arrays,我正在检查并想知道JavaAPI中应该有一种方法来查找小数数组的平均值。但是找不到它。如果我们有输入,你能提供吗?如果没有,我想知道为什么,因为这是一个非常简单的方法 答复: 对于阵列: OptionalDouble averageOptional = Arrays.stream(new double[]{1, 2, 3}).average(); 有关列表: OptionalDouble averageOptional= list.stream().mapToDouble(val->va
OptionalDouble averageOptional = Arrays.stream(new double[]{1, 2, 3}).average();
有关列表:
OptionalDouble averageOptional= list.stream().mapToDouble(val->val).average();
要查找双值:
averageOptional.orElse(0D);
averageOptional.getAsDouble();
在Java 8中,您可以为此使用
stream
:
OptionalDouble average = Arrays.stream(new double[]{1, 2, 3}).average();
还有另一个有趣的方法:
Arrays.stream(new double[]{1, 2, 3}).summaryStatistics();
它返回类型为
DoubleSummaryStatistics
的变量。它包含诸如getMax()
,getAverage()
,getSum()
等数据。在Java 8中,您可以使用流来实现此目的:
OptionalDouble average = Arrays.stream(new double[]{1, 2, 3}).average();
还有另一个有趣的方法:
Arrays.stream(new double[]{1, 2, 3}).summaryStatistics();
它返回类型为DoubleSummaryStatistics
的变量。它的数据类似于getMax()
,getAverage()
,getSum()
,等等。使用Arrays.stream(新的int[]{1,2,3}).average().get()代码>使用数组.stream(新的int[]{1,2,3}).average().get()代码>Java 8中有一个
double average = Arrays.stream(new double[]{1,2,5,8}).average().getAsDouble();
Java8中有一个
double average = Arrays.stream(new double[]{1,2,5,8}).average().getAsDouble();
谢谢我们是否也有特别针对ArrayList的方法?当然,ArrayList有.stream()
方法,这就是您需要的;)我得到了所需的答案,谢谢你的提示。OptionalDouble average=list.stream().mapToDouble(val->val.average();谢谢我们是否也有特别针对ArrayList的方法?当然,ArrayList有.stream()
方法,这就是您需要的;)我得到了所需的答案,谢谢你的提示。OptionalDouble average=list.stream().mapToDouble(val->val.average();