BigDecimal做比较
时间: 2023-08-03 16:11:44 浏览: 49
在Java中,可以使用BigDecimal类来进行高精度计算,包括比较大小。BigDecimal类提供了以下方法来比较两个BigDecimal对象的大小:
1. compareTo(BigDecimal val):将此BigDecimal与指定的BigDecimal进行比较,返回一个int值,表示它们的大小关系。如果此BigDecimal小于val,则返回负整数;如果此BigDecimal等于val,则返回0;如果此BigDecimal大于val,则返回正整数。
例如:
```
BigDecimal num1 = new BigDecimal("123.45");
BigDecimal num2 = new BigDecimal("456.78");
int result = num1.compareTo(num2);
if (result < 0) {
System.out.println("num1 is less than num2");
} else if (result == 0) {
System.out.println("num1 is equal to num2");
} else {
System.out.println("num1 is greater than num2");
}
```
输出结果为:num1 is less than num2
2. equals(Object x):比较此BigDecimal与指定的Object对象是否相等。如果x不是BigDecimal对象,则返回false。否则,比较它们的值是否相等,返回一个boolean值。
例如:
```
BigDecimal num1 = new BigDecimal("123.45");
BigDecimal num2 = new BigDecimal("123.450");
if (num1.equals(num2)) {
System.out.println("num1 is equal to num2");
} else {
System.out.println("num1 is not equal to num2");
}
```
输出结果为:num1 is not equal to num2
需要注意的是,在使用BigDecimal进行比较时,应该使用compareTo方法而不是equals方法,因为equals方法只能比较值是否相等,而不考虑精度和小数点后的位数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)