考虑一下简单的测试类:
import java.math.BigDecimal;
/**
* @author The Elite Gentleman
*
*/
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
BigDecimal x = new BigDecimal("1");
BigDecimal y = new BigDecimal("1.00");
System.out.println(x.equals(y));
System.out.println(x.compareTo(y) == 0 ? "true": "false");
}
}
您可以(有意识地)说x
等于y
(而不是对象引用),但是当您运行该程序时,会显示以下结果:
false
true
问:compareTo()
和equals()
在BigDecimal
中有什么不同,compareTo
可以确定x
等于y
PS:我看到BigDecimal在equals()
方法上有一个inflate()
方法。inflate()
到底是做什么的?
https://stackoverflow.com/questions/6787142
复制相似问题