java steam bigdecimal求平均数_java(002)
时间: 2023-10-22 17:25:46 浏览: 78
JavaDemical:Java 数字API
可以使用Java 8中的Stream和BigDecimal来计算平均数,以下是示例代码:
```java
import java.math.BigDecimal;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
BigDecimal[] nums = {new BigDecimal("1.23"), new BigDecimal("2.34"), new BigDecimal("3.45")};
BigDecimal sum = Arrays.stream(nums).reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal avg = sum.divide(BigDecimal.valueOf(nums.length), 2, BigDecimal.ROUND_HALF_UP);
System.out.println("平均数为:" + avg);
}
}
```
代码解释:
1. 定义一个包含BigDecimal类型元素的数组 `nums`。
2. 使用 `Arrays.stream(nums)` 将数组转换为流。
3. 使用 `reduce` 方法将流中所有元素求和,初始值为 `BigDecimal.ZERO`。
4. 将求和结果除以元素个数,保留2位小数并四舍五入,得到平均数。
5. 输出平均数。
阅读全文