Java中使用BigDecimal类型比较大小

BigDecimal使用场景

BigDecimal在订单结算、账单计算场景上使用

为什么要用BigDecimal

不管用什么,都有其中的道理,在平时用到一些int类型的数据时,很容易发现一个问题,我心算出来的答案怎么和程序计算的不一样,我小学白上了???。ok,这个问题可以去问问度娘:“为什么要使用BigDecimal类型进行高精度运算”,这边直接进入主题。

用BigDecimal的compareTo方法做大小判断

前者和后者比较等于0的 则前者等于后者;
前者和后者比较等于1的 则前者大于后者;
前者和后者比较等于-1的 则前者小于后者;
经测试,验证通过。
在这里插入图片描述

下面贴代码:



public class BigDecimalDemo {
    public static void main(String[]args){
         BigDecimal a = BigDecimal.ZERO;
        //a是否比0相等  true
        System.out.println(a.compareTo(new BigDecimal(0)) == 0);
        //a是否比1小  true
        System.out.println(a.compareTo(new BigDecimal(1)) < 0);
        //a是否比-1大  true
        System.out.println(a.compareTo(new BigDecimal(-1)) > 0);

        //a是否比0相等 true
        System.out.println(a.compareTo(new BigDecimal(0)) == 0);
        //a是否比0大  false
        System.out.println(a.compareTo(new BigDecimal(1)) > 0);
        ///a是否比-1小 false
        System.out.println(a.compareTo(new BigDecimal(-1)) < 0);
    }
}


版权声明:本文为weixin_41336523原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。