BigDecimal是Java中用于处理高精度数值计算的类,可以避免浮点数计算时出现的精度丢失问题。以下是使用BigDecimal的一些常见操作:
- 创建一个BigDecimal对象:
BigDecimal num1 = new BigDecimal("123.456"); BigDecimal num2 = new BigDecimal(123.456);
- 加减乘除操作:
BigDecimal result = num1.add(num2); BigDecimal result = num1.subtract(num2); BigDecimal result = num1.multiply(num2); BigDecimal result = num1.divide(num2);
- 设置精度:
BigDecimal result = num1.setScale(2, RoundingMode.HALF_UP); // 设置小数点后保留2位,四舍五入
- 比较大小:
int comparison = num1.compareTo(num2); // 返回-1表示num1 < num2,0表示num1 = num2,1表示num1 > num2
- 转换成其他数据类型:
int intValue = https://www.yisu.com/ask/num1.intValue();>
- 其他常用方法:
BigDecimal result = num1.pow(2); // num1的平方 BigDecimal result = num1.abs(); // num1的绝对值 BigDecimal result = num1.max(num2); // num1和num2中的较大值 BigDecimal result = num1.min(num2); // num1和num2中的较小值