Java Division错误
我有以下变量:
int first = 0; int end = 0;
在公共课上宣布。
在一个方法中:
double diff = end / first; double finaldiff = 1 - diff;
System.out.println
上的end
变量是527
,第first
是480
。
为什么差异的答案是1
? 它应该是1.097916667
,我以为使用double
可以让我计算成小数?
除以两个int
将得到一个int
,然后隐式转换为double
。 在分裂之前施放一个到double
:
double diff = (double)end / first;