方法返回双数组的平均值

时间:2014-12-14 19:19:55

标签: java arrays methods

我是编程的新手,并且一直试图解决这个问题,一直在看类似的问题,但我不明白我的代码是什么错。

所以赋值是编写一个方法,该方法接受一个包含三个双精度的数组。然后返回三个双打的平均值。然后编写一个应该调用的main,然后键入方法。

谢谢!

主要

public class Tenta131031upg1main {
public static void main (String[]args){

    double []arr ={3.15, 4.41, 7.64};

    Tenta131031upg1.genomsnitt(double arr[]);

    System.out.println(Tenta131031upg1.genomsnitt(arr));

}

}

public class Tenta131031upg1 {

static int i =0;
static double sammanlagd=0;
static double genomsnitt=0;

public static double genomsnitt(double[]arr){

    while(i<arr[].length()){                         
        sammanlagd = sammanlagd + arr[i];
        i++;
    }
    genomsnitt = sammanlagd/arr[].length();
    return genomsnitt;

}
}

PS。它们是两个不同的类,1个主要类和1个类,它们不在同一个文件中!

错误: 令牌上的语法错误&#34; double&#34;,new expected     变量必须提供维度表达式或数组初始值设定项     arr无法解析为类型

at Tenta131031upg1main.main(Tenta131031upg1main.java:7)

2 个答案:

答案 0 :(得分:0)

请更正第一个文件中的两行:

double[] arr ={3.15, 4.41, 7.64};

Tenta131031upg1.genomsnitt(arr);

您在第二行创建了一个新的空数组。

答案 1 :(得分:0)

试试这个:

主要

public class Tenta131031upg1main {
  public static void main (String[]args){

    double[] arr ={3.15, 4.41, 7.64};
    System.out.println(Tenta131031upg1.genomsnitt(arr));

  }
}

<强>类

public class Tenta131031upg1 {

static int i =0;
static double sammanlagd=0;
static double genomsnitt=0;

  public static double genomsnitt(double[] arr){

    while(i<arr.length){                         
        sammanlagd = sammanlagd + arr[i];
        i++;
    }
    genomsnitt = sammanlagd/arr.length;
    return genomsnitt;

  }
}

变更是:

  • 更改方法调用
  • arr.length而不是arr [] .length()