Java中的java.math.BigDecimal
是用于进行高精度计算的类。它提供了一种比基本数据类型(如double和float)更准确的表示方法,并且支持大数运算。
下面是BigDecimal
的一些基本用法:
1.创建BigDecimal
对象: 可以通过传入字符串或者数字值来创建BigDecimal
对象,例如:
BigDecimal num1 = new BigDecimal("123.45");
BigDecimal num2 = new BigDecimal(100);
2.基本运算: BigDecimal
提供了一系列基本运算方法,包括加法、减法、乘法和除法。这些方法会返回一个新的BigDecimal
对象,而不会修改原始对象:
BigDecimal sum = num1.add(num2); // 加法
BigDecimal difference = num1.subtract(num2); // 减法
BigDecimal product = num1.multiply(num2); // 乘法
BigDecimal quotient = num1.divide(num2); // 除法
3.精度设置: 默认情况下,BigDecimal
的计算是精确的,但是可以通过设置精度来控制小数点后的位数:
BigDecimal result = num1.divide(num2, 2, RoundingMode.HALF_UP); // 结果保留两位小数
4.比较操作: 可以使用compareTo
方法来比较两个BigDecimal
对象的大小:
int comparison = num1.compareTo(num2);
if (comparison == 0) {
// 两个数相等
} else if (comparison < 0) {
// num1 < num2
} else {
// num1 > num2
}
5.for循环相加
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
BigDecimal sum = BigDecimal.ZERO; // 初始化累加变量为0
for (int i = 0; i < yourArray.length; i++) {
BigDecimal gyInventory = yourArray[i].getGyInventory(); // 获取当前的 BigDecimal 数字
sum = sum.add(gyInventory); // 将当前的 gyInventory 值累加到 sum 上
}
System.out.println("Sum of gyInventory: " + sum); // 输出累加结果
}
}