用Java确定用户提供的数组的最大值和平均值

时间:2015-10-17 12:30:11

标签: java arrays max mean

我是编码的新手,所以对我来说很容易。我试图使用两个单独的类(即xyz和一个单独的xyztester类)来确定用户提供的数组的最大值和平均值。我有我的编码,但最大输出为0.0,平均输出比阵列长度小1。这是我的编码 -

" XYZ"班级

public static double maximum(double[] array){
    double max = array[0];
    for (int j = 1; j < array.length; j++){
        if(array[j] > max){
            max = array[j];
        }
    }
    return max;
}

public static double mean(double[] array){
    double sum = 0;
    for (double k = 0; k < array.length; k++)
        sum = sum + array.length;

    double avg = sum / array.length;

    return avg;
}

&#34; xyzTester&#34;类

    double [] b;
    b = new double [quantArray];

    int j;
    for (j = 0; j > quantArray; j++){
        b[j] = in.nextDouble();
    }
    double n = xyz.maximum(b);

    double [] c;
    c = new double [quantArray];

    int k;
    for (k = 0; k > quantArray; k++){
        c[k] = in.nextDouble();
    }
    double o = xyz.mean(c);

有人可以详细说明我做错了吗?

1 个答案:

答案 0 :(得分:1)

我看到两个问题:在均值方法

sum = sum + array.length;

应该是

sum = sum + array[k];

其次,所有浮点计算应该在浮点运算符之间。因此,在分割之前,将数组长度更好地转换为加倍:

double avg = sum / (double)array.length;
相关问题