BigDecimal不精确计算

2008-07-17 14:04:06.0     浏览:635     来源:巧巧读书
关键词:  BigDecimal     计算  

关于BigDecimal 的不精确计算问题

view plaincopy to clipboardprint?
public static void main(String[] args){

BigDecimal bg1 = new BigDecimal(100.91);

BigDecimal bg2 = new BigDecimal(5);

BigDecimal bg3 = bg1.multiply(bg2);

System.out.println(bg3);

}

public static void main(String[] args){

BigDecimal bg1 = new BigDecimal(100.91);

BigDecimal bg2 = new BigDecimal(5);

BigDecimal bg3 = bg1.multiply(bg2);

System.out.println(bg3);

}

输入结果为 504.549999999999982946974341757595539093017578125

实际结果应为 504.55

现在作了如下函数,可以解决一部分处理,但是测试时,有些case,还是有不精确的时候

比如 0.123 和 5E10相乘 scale设置为10的时候,小数部分并不全为零

[第1页]   [第2页]   [下一页]