添加两个double类型变量会返回非常长的十进制值

时间:2017-08-17 12:27:48

标签: java floating-point double

我有一个应用程序,我打算添加两个double类型的值。在某些情况下,结果包含一个非常长的小数部分。我能够在一个单独的程序中重现这个问题。

public class Test { 
    public static void main (String args []) {
        double total1= 8.69;
        double total2 = 1.69;
        double totalamount = total1 + total2 ;

        System.out.println(totalamount);
    }
}

输出:10.379999160766602 (被驱逐的输出格式应为#。##)

我尝试更改total1total2的值。在某些情况下,输出是预期的格式。 long值的出现非常随机,并且它也与float数据类型一致。

上述行为的解释是什么?

0 个答案:

没有答案