BigDecimal compareTo方法
时间:2020-02-23 14:41:14 来源:igfitidea点击:
在本教程中,我们将看到关于BigDecimal的Compareto方法。
此方法用于比较两个大数字。
语法
public int CompareTo(BigDecimal b)
返回类型
Compareto方法返回-1,0,1 -1:首先是大于第二个BigDecimal 0:首先是BigDecimal等于第二大型1:第一个BigDecimal大于第二个BigDecimal
BigDecimal Compareto示例
让我们在示例的帮助下查看CompareTo方法。
import java.math.*; class BigDecimalDemo { public static void main(String[] args) { //create 2 BigDecimal objects BigDecimal bigdecimal1 = new BigDecimal("80"); BigDecimal bigdecimal2 = new BigDecimal("40"); //comparing bigdecimal1 and bigdecimal2 int result = bigdecimal1.compareTo(bigdecimal2); if( result == -1 ) System.out.println("First BigDecimal is less than Second BigDecimal"); else if( result == 0) System.out.println("First BigDecimal is equal to Second BigDecimal"); else if( result == 1 ) System.out.println("First BigDecimal is greater than Second BigDecimal"); } }
上面的程序将生成低于输出。
First BigDecimal is greater than Second BigDecimal
BigDecimal Compareto VS等于
与et等方法不同,如果两个BigDecimals具有相同的值但不同的缩放,则Compareto方法将返回0. it persperto方法将认为它们相等。
import java.math.*; class BigDecimalDemo { public static void main(String[] args) { //create 2 BigDecimal objects BigDecimal bigdecimal1 = new BigDecimal("20.0"); BigDecimal bigdecimal2 = new BigDecimal("20.000"); System.out.println("Using BigDecimal compareTo method"); //comparing bigdecimal1 and bigdecimal2 using CompareTo method int result = bigdecimal1.compareTo(bigdecimal2); if( result == -1 ) System.out.println("First BigDecimal is less than Second BigDecimal"); else if( result == 0) System.out.println("First BigDecimal is equal to Second BigDecimal"); else if( result == 1 ) System.out.println("First BigDecimal is greater than Second BigDecimal"); System.out.println("================="); System.out.println("Using BigDecimal equals method"); //comparing bigdecimal1 and bigdecimal2 using equals method boolean equalsResult=bigdecimal1.equals(bigdecimal2); if(equalsResult) System.out.println("First BigDecimal is equal to Second BigDecimal"); else System.out.println("First BigDecimal is not equal to Second BigDecimal"); } }
运行上面的程序时,我们将得到以下输出。
Using BigDecimal compareTo method First BigDecimal is equal to Second BigDecimal ================= Using BigDecimal equals method First BigDecimal is not equal to Second BigDecimal
与零的BigDecimal比较
有多种方法可以使用0.best的方式比较大量的方式是:
bigDecimal.compareTo(BigDecimal.ZERO)>0
让我们在简单的例子的帮助下看看。
import java.math.*; class BigDecimalDemo { public static void main(String[] args) { //create BigDecimal object BigDecimal bigdecimal1 = new BigDecimal("1.0"); //comparing bigdecimal1 and zero using CompareTo method int result = bigdecimal1.compareTo(BigDecimal.ZERO); if( result == -1 ) System.out.println("BigDecimal is less than Zero"); else if( result == 0) System.out.println("BigDecimal is equal to Zero"); else if( result == 1 ) System.out.println("BigDecimal is greater than Zero"); } }
运行上面的程序时,我们将得到以下输出。
BigDecimal is greater than Zero