BigDecimal的加减乘除取整及比较大小
BigDecimal的加减乘除
加法:add
减法:subtract
乘法:multiply
除法:divide
可参考下面代码:
BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new BigDecimal("5"); BigDecimal bignum3 = null; //加法 bignum3 = bignum1.add(bignum2); System.out.println("求和:" + bignum3); //减法 bignum3 = bignum1.subtract(bignum2); System.out.println("求差:" + bignum3); //乘法 bignum3 = bignum1.multiply(bignum2); System.out.println("乘法积:" + bignum3); //除法 bignum3 = bignum1.divide(bignum2); System.out.println("除法结果:" + bignum3);
//取整
BigDecimal bd = new BigDecimal(“12.1”);
long l = bd.setScale( 0, BigDecimal.ROUND_UP ).longValue(); // 向上取整
long l = bd.setScale( 0, BigDecimal.ROUND_DOWN ).longValue(); // 向下取整
BigDecimal比较大小
//前提为a、b均不能为null if(a.compareTo(b) == -1){ System.out.println("a小于b"); } if(a.compareTo(b) == 0){ System.out.println("a等于b"); } if(a.compareTo(b) == 1){ System.out.println("a大于b"); } if(a.compareTo(b) > -1){ System.out.println("a大于等于b"); } if(a.compareTo(b) < 1){ System.out.println("a小于等于b"); }
if(a.compareTo(b) > 0){
System.out.println("a大于b");
}
BigDecimal 如果非null, 则取值;如果是null, 则取 0
BigDecimal b; Optional.ofNullable(b).orElse(BigDecimal.ZERO);

浙公网安备 33010602011771号