比较大小的时候最好不要使用new BigDecimal(xx)来比较,而应该使用BigDecimal.valueOf(xx);
原因是new BigDecimal(double)是利用的double构造方法,该构造方法有一定的不可预料性;
比如比较一个值是否等于100
xx.compareTo(new BigDecimal(100)) == 0//不建议
xx.compareTo(BigDecimal.valueOf(100)) == 0//建议
比较大小的时候最好不要使用new BigDecimal(xx)来比较,而应该使用BigDecimal.valueOf(xx);
原因是new BigDecimal(double)是利用的double构造方法,该构造方法有一定的不可预料性;
比如比较一个值是否等于100
xx.compareTo(new BigDecimal(100)) == 0//不建议
xx.compareTo(BigDecimal.valueOf(100)) == 0//建议