2014-09-24 108 views
-2

我在初始化数组时遇到了问题,并且不太明白如何去做。如何初始化一个Array对象?

public class Array { 
    int[] array; 

    public Array(int[] array) { 
     this.array = array; 
    } 

    public int sum() { 
     int sum = 0; 
     for (int i = 0; i < this.array.length; i++) { 
      sum = sum + array[i]; 
     } 
     return sum; 
    } 

    public double average() { 
     double av = this.sum()/this.array.length; 
     return av; 
    } 

    public static void main(String[] args) { 
     Array a = new Array[3]; 
    } 
} 

我不断收到一个错误,即要求:数组发现:[]数组

我希望做一个扫描仪,并有阵列用户输入,但我甚至不知道如何初始化它首先

+0

仅仅因为你命名你的类“Array”并不能使它成为可索引的。 – 2014-09-24 11:01:22

+0

传递一个int []数组,如数组a = new Array(new int [3]) – 2014-09-24 11:03:01

回答

3

你必须改变

Array a = new Array[3]; 

Array a = new Array(new int[3]); 

Array的构造函数将int[]作为输入参数。

+0

如果我不知道数组有多大,我可以让它成为新的int []吗? – Panthy 2014-09-24 11:02:32

+0

如果你不知道'array'的大小,你可以使用'ArrayList'而不是'array' – 2014-09-24 11:05:03

+1

@Panthy不,你不能。遵循Ruchira的建议,或者宣布你的阵列比你需要的大。 – TedTrippin 2014-09-24 11:10:39