BigDecimal值在java比较的两种方法

美女程序员鼓励师

1、使用equals()方法不但要求两个BigDecimal的值相等,还要求它们的scale()相等。

   BigDecimal d1 = new BigDecimal("123.45");

   BigDecimal d2 = new BigDecimal("123.45000");

   System.out.println(d1.equals(d2)); // false,因为scale不同

   System.out.println(d1.equals(d2.stripTrailingZeros())); // true,因为d2去除尾部0后scale变为2,与d1相同

2、使用compareTo()方法来比较两数大小,它根据两个值的大小分别返回-1、1和0,分别表示小于、大于和等于。

    import java.math.BigDecimal;

    public class Demo {

     public static void main(String[] args) {

      BigDecimal d1 = new BigDecimal("123.45");

      BigDecimal d2 = new BigDecimal("123.45000");

      BigDecimal d3 = new BigDecimal("123.40");

      System.out.println(d1.compareTo(d2)); // 0

      System.out.println(d1.compareTo(d3));//  1

      System.out.println(d3.compareTo(d2));// -1

     }

    }

以上就是BigDecimal值在java比较的两种方法,希望对大家有所帮助。更多Java学习指路:Java基础

本教程操作环境:windows7系统、java10版,DELL G3电脑。

以上是 BigDecimal值在java比较的两种方法 的全部内容, 来源链接: utcz.com/z/544825.html

回到顶部