Java除法错误
我有以下变量:Java除法错误,java,division,integer-division,Java,Division,Integer Division,我有以下变量: int first = 0; int end = 0; 在公共类中声明 在方法中: double diff = end / first; double finaldiff = 1 - diff; System.out.println上的end变量是527,第一个变量是480 为什么diff的答案是1?它应该是1.097916667,我想使用double可以让我计算成小数?除以两个ints会得到int,然后隐式转换成double。在除数之前,将一个转换为一个double: do
int first = 0;
int end = 0;
在公共类中声明
在方法中:
double diff = end / first;
double finaldiff = 1 - diff;
System.out.println上的end
变量是527
,第一个变量是480
为什么diff的答案是1
?它应该是1.097916667
,我想使用double
可以让我计算成小数?除以两个int
s会得到int
,然后隐式转换成double
。在除数之前,将一个转换为一个double
:
double diff = (double)end / first;
0/0既不是1也不是1.097916667…很抱歉,结束和第一个是在前一个if语句中收集的。@OliCharlesworth:OP声明:system.out.println上的endyear变量是527,第一年是480。
因此,计算结果是527/480,deos等于1.097916667
。不知道你从哪里得到了0/0。@FrançoisWahl:因为OP指定它们都是0…@FrançoisWahl:我确实读了整个问题,显然你读得太快了(!)-“年终
”!=“结束
”等等。无论如何,我没有投反对票。我不得不在lukecampbell等了十分钟,每个人在做正确的答案时也是如此。