使用 BinaryOperator<BigDecimal> 计算平均值,您可以使用 Java 8 中的 Stream API 来实现。下面是一个示例代码:

import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;
import java.util.function.BinaryOperator;

public class Main {
    public static void main(String[] args) {
        List<BigDecimal> numbers = Arrays.asList(
                new BigDecimal('1.5'),
                new BigDecimal('2.0'),
                new BigDecimal('2.5'),
                new BigDecimal('3.0')
        );

        BinaryOperator<BigDecimal> sumOperator = (a, b) -> a.add(b);

        BigDecimal sum = numbers.stream()
                .reduce(BigDecimal.ZERO, sumOperator);

        BigDecimal average = sum.divide(new BigDecimal(numbers.size()));

        System.out.println('Average: ' + average);
    }
}

在上面的示例中,我们首先创建一个包含 BigDecimal 类型数字的列表。然后,我们定义了一个 BinaryOperator<BigDecimal>,用于将两个 BigDecimal 对象相加。接下来,我们使用 Stream 的 reduce 操作将列表中的所有数字相加,得到总和。最后,我们通过将总和除以列表的大小来计算平均值,并将结果打印出来。

请注意,由于 BigDecimal 是不可变对象,所以我们使用 add 方法将两个 BigDecimal 对象相加,而不是直接使用 + 运算符。

使用 BinaryOperator<BigDecimal> 计算平均值 - Java 8 Stream API

原文地址: https://www.cveoy.top/t/topic/eqm6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录