BigDecimal的基本使用

文章目录

      • BigDecimal的用法总结
      • 加减乘除的使用
      • 使用compareTo()进行比较

BigDecimal的用法总结

BigDecimal a = new BigDecimal("123");
BigDecimal b = new BigDecimal("456");
BigDecimal c = a.add(b);// 加
BigDecimal d = a.subtract(b);// 减
BigDecimal e = a.multiply(b);// 乘
// 除,需指定精度, 保留6位小数,四舍五入,银行项目需注意,向上还是向下取整,不然钱会越算亏得越多
BigDecimal f = a.divide(b, 6, BigDecimal.ROUND_HALF_UP));
a.negate();//取反

加减乘除的使用

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);

使用compareTo()进行比较

@Test
    public void compareTo() {
    	// 创建三个BigDecimal对象
        BigDecimal fee1 = new BigDecimal(1);
        BigDecimal fee2 = new BigDecimal(-1);
        BigDecimal fee3 = new BigDecimal(0.001);
        // 进行比较的值
        BigDecimal num = new BigDecimal(0.001);
        if(fee1.compareTo(num) == 1){
            System.out.println(fee1.compareTo(num));
            System.out.println("大于");
            System.out.println("-----------");
        }
        if(fee2.compareTo(num) == -1){
            System.out.println(fee2.compareTo(num));
            System.out.println("小于");
            System.out.println("-----------");
        }
        if(fee3.compareTo(num) == 0){
            System.out.println(fee3.compareTo(num));
            System.out.println("等于");
            System.out.println("-----------");
        }
    }

输出结果如下:

1
大于
-----------
-1
小于
-----------
0
等于
-----------

你可能感兴趣的:(BigDecimal的基本使用)