在Java中将两个整数除以double

我可以看到这对于新程序员来说是一个普遍的问题,但是我没有成功实现我的代码的任何解决方案。基本上,我想将w和v除,必须将其保存到double变量中。但它打印[0.0,0.0,…,0.0]

public static double density(int[] w, int[] v){

double d = 0;

for(L = 0; L < w.length; L++){

d = w[L] /v[L];

}

return d;

}

回答:

此行分d = w[L] /v[L];几步进行

d = (int)w[L]  / (int)v[L]

d=(int)(w[L]/v[L]) //the integer result is calculated

d=(double)(int)(w[L]/v[L]) //the integer result is cast to double

换句话说,精度在转换为两倍之前已经消失了,您需要先转换为两倍,所以

d = ((double)w[L])  / (int)v[L];

这迫使Java在整个过程中都使用double数学,而不是使用整数数学,然后在最后转换为double

以上是 在Java中将两个整数除以double 的全部内容, 来源链接: utcz.com/qa/407837.html

回到顶部