BigDecimal比较大小及判令处理不要使用intValue(),doubleValue(),floatValue()获取基本类型数据后在比较,这样会有精度丢失问题,请使用compareTo
例如:
/**
-1, 0, or 1 as this BigDecimal is numerically less than, equal to, or greater than val.
*/
int isBig = new BigDecimal("0.00001").compareTo(BigDecimal.ZERO);
运行后:isBig 为1
特别是与整数比较的时候,一定不能使用intValue()来处理,否则当数据为小数的时候,获取的都是0