加add()、减subtract()、乘multiply()、除divide()
BigDecimal bigDecimalA = new BigDecimal(4);
BigDecimal bigDecimalB = new BigDecimal(2);
// 加法
BigDecimal result1 = bigDecimalA.add(bigDecimalB);
System.err.println(result1); // 输出6
// 减法
BigDecimal result2 = bigDecimalA.subtract(bigDecimalB);
System.err.println(result2); // 输出2
// 乘法
BigDecimal result3 = bigDecimalA.multiply(bigDecimalB);
System.err.println(result3); // 输出8
// 除法
BigDecimal result4 = bigDecimalA.divide(bigDecimalB);
System.err.println(result4); // 输出2
保留小数位 使用 setScale()
.setScale(保留几位小数 , 计算精度);
RoundingMode.HALF_UP – 四舍五入
BigDecimal bigDecimalA = new BigDecimal("1.2345");
// 设置小数位数
BigDecimal result = bigDecimalA .setScale(2, RoundingMode.HALF_UP);
System.err.println(result); // 输出1.23
比较大小 使用compareTo()
-1 表示小于
0 表示相等
1表示大于
BigDecimal bigDecimalA= new BigDecimal("10.00");
BigDecimal bigDecimalB= new BigDecimal("10.00");
//返回结果为数字类型
int result = bigDecimalA.compareTo(bigDecimalB);
//-1为小于
if (result == 1){
System.err.println("false");
}
//0为相等
if (result == 0){
System.err.println("true");
}
//1为大于
if (result == 1){
System.err.println("false");
}
比较是否相等 可以使用 equals()、compareTo()
BigDecimal bigDecimalA = new BigDecimal("10.00");
BigDecimal bigDecimalB= new BigDecimal("10.00");
//比较是否相等
if (bigDecimalA.equals(bigDecimalB)){
System.err.println("true");
}
//比较是否不等
if (!bigDecimalA.equals(bigDecimalB)){
System.err.println("false");
}
//比较是否相等
if (bigDecimalA.compareTo(bigDecimalB) == 0){
System.err.println("true");
}
判断是否为0 使用.compareTo(BigDecimal.ZERO) == 0
BigDecimal bigDecimalA = new BigDecimal("0");
if (bigDecimalA.compareTo(BigDecimal.ZERO) == 0){
System.err.println("true");
}