BigDecimal num1 = new BigDecimal("0"); BigDecimal num2 = new BigDecimal("0.00"); if (num1.compareTo(BigDecimal.ZERO) == 0) { System.out.println("num1 is equal to 0"); } if (num2.compareTo(BigDecimal.ZERO) == 0) { System.out.println("num2 is equal to 0 or 0.00"); } 优化这段代码
时间: 2023-12-14 17:37:04 浏览: 179
BigDecimal的计算
可以使用BigDecimal的equals方法来比较两个BigDecimal对象是否相等,而不必使用compareTo方法:
```
BigDecimal num1 = new BigDecimal("0");
BigDecimal num2 = new BigDecimal("0.00");
if (num1.equals(BigDecimal.ZERO)) {
System.out.println("num1 is equal to 0");
}
if (num2.equals(BigDecimal.ZERO)) {
System.out.println("num2 is equal to 0 or 0.00");
}
```
此外,如果只需要判断一个BigDecimal对象是否为零,还可以使用BigDecimal的signum方法,该方法返回一个int值,表示该BigDecimal对象的符号,如果返回值为0,则表示该对象为零:
```
BigDecimal num1 = new BigDecimal("0");
BigDecimal num2 = new BigDecimal("0.00");
if (num1.signum() == 0) {
System.out.println("num1 is equal to 0");
}
if (num2.signum() == 0) {
System.out.println("num2 is equal to 0 or 0.00");
}
```
阅读全文