在这里的代码中,我有一个文本文件,读取放在其中的数字,然后计算方差。一个问题是我的最后一段代码return nSumVar();
说我需要创建一个方法,但是我的nsumvar已经初始化了,那么问题是什么?
public double getVariance()
{
boolean done = false;
int nCount = 0;
for(int i=0; i < maxArr; i++) {
for(int j = 0; j < maxArr; j++){
// ------------------------------------------
// If the array entry is valid then add it to total
// If not then exit the loops and return the total
//
if (a[i][j] != INVALID)
{
nVarianceAray[i][j] = a[i][j] - mean;
nVarianceAray[i][j] *= nVarianceAray[i][j];
nCount ++;
}
else
{
done = true;
break;
}
}
if (done == true) {
break;
}
}
int nSumVar = 0;
done = false;
for (int i=0; i<maxArr; i++)
{
for (int j=0; i<maxArr; j++)
{
{
nSumVar += nVarianceAray[i][j];
}
{
done = true;
break;
}
}
if(done)
break;
nSumVar/=nCount;
}
return nSumVar();
}}
答案 0 :(得分:0)
在上面的代码中, getVariance()方法返回一个double,因此 getVariance 方法应该返回一个double值。同样在您的代码 nSumVar 中声明为 int 变量而不是方法。
正确的电话是
return nSumVar
不是 。return nSumVar()