在我的Java代码中,我正在尝试执行以下操作
double a=1769.58;
double b=986.58;
double c=a-b;
System.out.println("Result "+c);
这将结果重新调整为782.9999999999999。但它应该是783.00这有什么问题。我可以得到正确的值,这是什么原因?
答案 0 :(得分:0)
这是因为计算机无法准确存储浮点数的良好值。 请参阅this response以了解有关此问题的更多信息。
答案 1 :(得分:0)
试试这个:
double a=1769.58;
double b=986.58;
int c=(int)a-(int)b;