Java.math.BigDecimal.compareTo() 方法

描述

java.math.BigDecimal.compareTo(BigDecimal val) 将 BigDecimal 对象与指定的 BigDecimal 值进行比较。

此方法认为两个值相等但比例不同(如 2.0 和 2.00)的 BigDecimal 对象是相等的。

此方法优先于六个布尔比较运算符 (<, ==, >, >=, !=, <=) 中的每一个的单独方法提供。

执行这些比较的建议习惯用法是:(x.compareTo(y) <op> 0),其中 <op> 是六个比较运算符之一。


指定者

compareTo 在接口 Comparable<BigDecimal>


声明

以下是 java.math.BigDecimal.compareTo() 方法的声明。

public int compareTo(BigDecimal val)

参数

val − 与此 BigDecimal 进行比较的值。


返回值

如果 BigDecimal 小于 val,则此方法返回 -1,如果 BigDecimal 大于 val,则返回 1,如果 BigDecimal 等于 val,则返回 0


异常

NA


示例

下面的例子展示了 math.BigDecimal.compareTo() 方法的使用。

package com.tutorialspoint;

import java.math.*;

public class BigDecimalDemo {

   public static void main(String[] args) {

      // create 2 BigDecimal objects
      BigDecimal bg1, bg2;

      bg1 = new BigDecimal("10");
      bg2 = new BigDecimal("20");

      //create int object
      int res;

      res = bg1.compareTo(bg2); // compare bg1 with bg2

      String str1 = "Both values are equal ";
      String str2 = "First Value is greater ";
      String str3 = "Second value is greater";

      if( res == 0 )
         System.out.println( str1 );
      else if( res == 1 )
         System.out.println( str2 );
      else if( res == -1 )
         System.out.println( str3 );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

Second value is greater