读书人

急java四舍五入有关问题

发布时间: 2011-12-14 23:20:17 作者: rapoo

急,java四舍五入问题,在线等!!!!!!!!!!
DecimalFormat test = new DecimalFormat("###.00");
test.format(90.015)) -->90.02
test.format(90.005)) -->90.00
问下这个是什么原因,找了文档,没找到确切说明。

[解决办法]
90.015,90.005用double或者float类型存放在计算机中是不能精确表示的,也就是说90.015的表示值可能比90.015稍微大一点,也有可能小一点;同样90.005的表示值可能比90.005稍微大一点,也有可能小一点
就如你所得的结果90.005的表示值稍微小于90.005
[解决办法]
一个是90.015000000000000568
一个是90.0049999999999954525
所以。。。
[解决办法]
呵呵.......了解了
[解决办法]
JF

读书人网 >J2SE开发

热点推荐