public class BigDecimal extends Number implements Comparable<BigDecimal> {
private final BigInteger intVal;
private final int scale;
}
查看 BigDecimal
的源码,可以发现,实际上一个 BigDecimal
是通过一个 BigInteger
和一个 scale
来表示的,即 BigInteger
表示一个完整的整数,而 scale
表示小数位数:
BigDecimal
用于表示精确的小数,常用于财务计算;
比较 BigDecimal
的值是否相等,必须使用 compareTo()
而不能使用 equals()
。