当前位置: 代码迷 >> Java相关 >> 和想象的不一样啊!!!
  详细解决方案

和想象的不一样啊!!!

热度:300   发布时间:2010-08-04 10:02:47.0
和想象的不一样啊!!!
public class inexact
{
    public static void main(String s[])
    {
        float total=0.0F;
        for(int i=0;i<10;i++)
            total=total+0.1F;
        if(total!=1.0F)System.out.println("total is "+total);
    }
}
运行结果杂和想象中的不一样啊???
搜索更多相关的解决方案: 想象  

----------------解决方案--------------------------------------------------------
这里涉及到小数转二进制的问题,出现误差也是正常的,微小的误差可以忽略不计
----------------解决方案--------------------------------------------------------
float,double类型的就会出现这样的问题,结果在很多时候是不精确的。
比如:3.0-2.0=1.00000000000000009,正常现象

----------------解决方案--------------------------------------------------------
  相关解决方案