Java BigDecimal 数组同比增长率计算方法
假设有两个 BigDecimal 数组,分别为 arr1 和 arr2,长度相同,可以使用如下代码进行同比计较:
for (int i = 0; i < arr1.length; i++) {
BigDecimal diff = arr2[i].subtract(arr1[i]);
BigDecimal ratio = diff.divide(arr1[i], 2, RoundingMode.HALF_UP).multiply(new BigDecimal('100'));
System.out.println('第' + (i+1) + '项同比增长率为:' + ratio + '%');
}
解释:
- 遍历数组,使用 subtract() 方法计算 arr2 中对应位置的元素减去 arr1 中对应位置的元素,得到增长量 diff。
- 使用 divide() 方法计算增长量 diff 除以 arr1 中对应位置的元素,得到增长率 ratio,并使用 multiply() 方法将增长率乘以 100,保留两位小数。
- 打印输出结果。
原文地址: https://www.cveoy.top/t/topic/mLRE 著作权归作者所有。请勿转载和采集!