java处理小数型参数乘除问题
问题: 无法使用double处理因为Double类型的数据相乘精度丢失问题
解决方法:
使用BigDecimal来解决
BigDecimal a = new BigDecimal("12.1110238");
BigDecimal b = new BigDecimal("12.1110238");
相乘
Double volume = a.multiply(b).doubleValue();
相除
Double rate = a.divide(b).doubleValue();
格式化数值(保留几位小数):
DecimalFormat df = new DecimalFormat("0.00")
String num = df.format(volume);