解决方案 »

  1.   

    class BigDecimal  可破
      

  2.   


            double aa = 1;
            double bb = 0.2;
            System.out.println(Double.parseDouble(new BigDecimal(String.valueOf(aa)).subtract(new BigDecimal(String.valueOf(bb))).toString()));
      

  3.   


    我想让  1-0.2=0.8   这做到了吗  我不是嫌他精确度低,而是嫌他精确度太高了BigDecimal 可以做到的
      

  4.   

    这样直接加减容易有误差的
    推荐用BigDecimal 
     new BigDecimal("1").subtract(new BigDecimal("0.2")).doubleValue()
      

  5.   

    这个问题不光java语言存在,其它语言也存在,用BigDecimal 处理。
      

  6.   


    我想让  1-0.2=0.8   这做到了吗  我不是嫌他精确度低,而是嫌他精确度太高了BigDecimal 可以做到的
    谢谢 的确解决了 但是还想问您一个问题 就是bigdecimal遇到1/3这样的就处理不了啊····怎么办