import java.lang.reflect.Array;
import java.util.Arrays;
public class randomArray {
public static void main(String[] args) {
double[] awesome = gimm();
System.out.println(Arrays.toString(awesome));
}
public static int[] gimme() {
int[] array = new int[40];
for(int i = 1; i< array.length; i++) {
array[i] = (int) (Math.random()*40);
}
return array;
}
public static double[] gimm() {
double mean = 0.0, variance = 0.0, sum = 0.0;
int ayeArray[] = gimme();
for(int i= 1; i<ayeArray.length;i++)
sum += ayeArray[i];
mean = sum/ayeArray.length;
for(int i= 1; i<ayeArray.length;i++)
variance = Math.pow(ayeArray[i] - mean, 2);
variance = variance/ayeArray.length;
return variance;
}
}
答案 0 :(得分:0)
变量变量是双精度型。您正在返回方差,因此您正在返回双精度型。但是,该方法被定义为double []。您必须返回double []。
有问题,请告诉我是否需要进一步的帮助。
答案 1 :(得分:0)
您将方差变量声明为double并返回它,但是方法gimm()返回数组double []。
答案 2 :(得分:0)
variance
中的gimm()
是双精度型,但是方法的返回类型是double[]
,它是双精度型数组。
像这样将方法的返回类型更改为两倍。
public static double gimm() { ...}
答案 3 :(得分:0)
您似乎已经声明了gimm()函数来返回double []。实际上,您最终会在函数末尾返回一个正常的double值。我建议您将方差变成一个double数组(如double []一样)。其他一切似乎都已设定。