我正在创建一个方法数组并继续得到错误:double无法转换为double []。 这是我的代码:
public static double[] calculate(double[] number1, double[] number2)
{
for( int i=0; i<10; i++)
{
return number1[i] * (6.67e-3) / (number2[i]*number2[i])
}
}
我不太清楚为什么这是错误的,因为我的for循环不应该将数组转换为double?
答案 0 :(得分:1)
在建议修复编译器错误之前,首先需要了解原始数据类型和数组之间的区别。
double
是primitive data type。
array是一个容器对象,可以包含相同类型的数据。 所以double和double []不一样。
通过查看代码,您似乎想要返回一个由输入数组值计算出的double值数组。
在此,您需要在将值分配给数组的各个元素之前创建所需大小的数组ret
。最后,将数组返回循环外。
public static double[] calculate(double[] number1, double[] number2)
{
double[] ret = new double[10];
for( int i=0; i<ret.length; i++)
{
ret[i] = number1[i] * (6.67e-3) / (number2[i]*number2[i]);
}
return ret;
}