| 网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 |
![]() |
| Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道 |
关于BigDecimal 的不精确计算问题 网管联盟bitsCN@com
view plaincopy to clipboardprint?
public static void main(String[] args){ 网管网www.bitscn.com
BigDecimal bg1 = new BigDecimal(100.91); 网管bitscn_com
BigDecimal bg2 = new BigDecimal(5); 中国网管论坛bbs.bitsCN.com
网管网www_bitscn_com
BigDecimal bg3 = bg1.multiply(bg2); 网管u家u.bitscn@com
System.out.println(bg3); 网管论坛bbs_bitsCN_com
网管联盟bitsCN_com
}
public static void main(String[] args){ 网管联盟bitsCN_com
BigDecimal bg1 = new BigDecimal(100.91);
BigDecimal bg2 = new BigDecimal(5); 网管联盟bitsCN@com
BigDecimal bg3 = bg1.multiply(bg2); 网管联盟bitsCN_com
System.out.println(bg3); 网管u家u.bitsCN.com
中国网管联盟bitsCN.com
}
网管联盟bitsCN@com
输入结果为 504.549999999999982946974341757595539093017578125
实际结果应为 504.55 网管bitscn_com
现在作了如下函数,可以解决一部分处理,但是测试时,有些case,还是有不精确的时候
比如 0.123 和 5E10相乘 scale设置为10的时候,小数部分并不全为零
|
0
|
评论加载中…