读书人

Double.parseDouble(quot;554546quot;) * Doub

发布时间: 2012-02-29 16:44:10 作者: rapoo

Double.parseDouble("554546") * Double.parseDouble("0.05")=27727.300000000003 ,如何减少误差
Double.parseDouble( "554546 ") * Double.parseDouble( "0.05 ")=27727.300000000003

如何减少误差

[解决办法]
BigDecimal b1 = new BigDecimal( "554546 ");
BigDecimal b2 = b1.multiply(new BigDecimal( "0.05 "));
System.out.println(b2.setScale(15, BigDecimal.ROUND_DOWN));
[解决办法]
DecimalFormat format = new DecimalFormat( "#.00 ");
double num=Double.parseDouble( "554546 ") * Double.parseDouble( "0.05 ")=27727.300000000003;
format.format(num); Ok!

读书人网 >Java Web开发

热点推荐