预期方法调用...为什么?
Method Call Expected... Why?
在这段代码中,我有一个文本文件,它读取其中的数字,然后计算方差。一个问题是我的最后一段代码 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();
}}
在上面的代码中 getVariance() 方法 return 是一个双精度所以 getVariance 方法应该 return 一个双精度价值。同样在您的代码中 nSumVar 声明为 int 变量而不是方法。
正确的调用是
return nSumVar
不是 return nSumVar()
.
在这段代码中,我有一个文本文件,它读取其中的数字,然后计算方差。一个问题是我的最后一段代码 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();
}}
在上面的代码中 getVariance() 方法 return 是一个双精度所以 getVariance 方法应该 return 一个双精度价值。同样在您的代码中 nSumVar 声明为 int 变量而不是方法。
正确的调用是
return nSumVar
不是 .return nSumVar()