System.out.println(2.0-1.1);
这个输出结果是什么,为什么和预想到的不一样呢

解决方案 »

  1.   

    http://blog.csdn.net/lm272001573/article/details/53553229
      

  2.   

    float,double类型的运算容易精度缺失,可以用BigDecimal来计算结果。
      

  3.   

    因为是按照double类型的进行了运算,你看看double类型有多少位小数
      

  4.   

    这个问题并不是只是Java里存在,问题的原因也不是什么计算机的原因,而是编程语言采用的计算标准规则本身就有这个缺陷导致的
      

  5.   

    与数据在计算机里面的存储有关,类似double类型的运算,可以使用BigDecimal
      

  6.   

    丢失精度了,不想丢失的话就用BigDecimal