gpt4 book ai didi

float 的 Java 8 流平均值

转载 作者:太空狗 更新时间:2023-10-29 23:00:20 26 4
gpt4 key购买 nike

我有以下模型:

public class WeightChange {

private float value;

public float getValue() {
return value;
}

public void setValue(float value) {
this.value = value;
}

}

和 Collection :

private List<WeightChange> weightChanges;

我已经实现了使用 Java 8 特性获取平均权重值的函数:

public float getAvgChangedWeight() {
return (float) weightChanges.stream().mapToDouble(WeightChange::getValue).average().getAsDouble();
}

能否请您帮助改进它,因为我认为转换为 double 不是一个好主意。

weightChanges 集合为空时它也会抛出异常。在这种情况下如何改进它?

最佳答案

要回答问题的第二部分,如果您想在列表为空时避免异常并返回一些 double 值,请使用 orElse 而不是 getAsDouble:

return weightChanges.stream()
.mapToDouble(WeightChange::getValue)
.average()
.orElse(Double.NaN);

关于 float 的 Java 8 流平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25876750/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com