如何计算阵列平均值

时间:2015-11-01 21:11:06

标签: java arrays average

我试图编写平均数组的代码。我一直收到一个return语句错误和主类丢失错误。请帮忙。

public class ArrayAverage {
    public static double average(double[] x){
        // declare and intialize array to hold value
        int[] numbers = new int[]{1, 2, 3 ,4, 5};

        //calculate sum of all array elements
        int sum = 0;

        for(int i=0; i < numbers.length ; i++)
        sum = sum + numbers[i];

        //calculate average value
        double average = sum / numbers.length;

        System.out.println("Average value of array elements is : " + average);
    }
}

1 个答案:

答案 0 :(得分:2)

在Java中,代码入口点始终是main方法。它具有以下签名:public static void main(String[] args)

您必须在average方法中调用main方法才能运行该应用程序。

此外,您的average方法声明返回类型double的值。但是,该方法没有return语句。您必须在方法return val;的末尾写入(val是您希望返回的任何双值),或者将方法返回类型声明为void

更重要的是,您的方法的参数x类型为double[]。在调用您的方法时(在main方法中),您必须传递这样的参数。或者,您可以将方法签名更改为不接受任何内容(无参数)。

现在,至于你方法的主体。它不是用最佳实践编写的,但功能上它看起来不错,除了一件事。

  

//计算平均值
  double average = sum / numbers.length;

这将进行整数除法,给出整数答案。这意味着小数位后的任何值都将被截断。要解决此问题,请执行以下两项操作之一:

  1. sum声明为double
  2. 分割时,将sumnumbers.length视为双重

    double average = sum / (double) numbers.length;

  3. P.S。我可以通过使用System.out.println来说明这是Java。将来,请务必使用Java或您的代码所使用的语言来标记您的问题。

相关问题