您可以使用流来求一个BigDecimal集合的平均值。下面是一个示例代码:

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<BigDecimal> numbers = new ArrayList<>();
        numbers.add(new BigDecimal("10.5"));
        numbers.add(new BigDecimal("20.6"));
        numbers.add(new BigDecimal("30.7"));
        numbers.add(new BigDecimal("40.8"));

        BigDecimal average = numbers.stream()
                .reduce(BigDecimal.ZERO, BigDecimal::add)
                .divide(new BigDecimal(numbers.size()));

        System.out.println("平均值:" + average);
    }
}

在上面的示例中,我们创建了一个BigDecimal类型的集合,并向其中添加了几个数字。然后,我们使用流的reduce操作将所有数字累加起来,并通过divide操作将结果除以集合的大小,得到平均值。最后,我们打印出平均值。

请注意,上述代码中使用了BigDecimal的add和divide方法来避免精度丢失问题

使用stream 求BigDecimal集合 平均值

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

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