cha*_*tty 407 java arrays initialization
我正在初始化这样的数组数据:
public class Array {
    int data[] = new int[10]; 
    /** Creates a new instance of Array */
    public Array() {
        data[10] = {10,20,30,40,50,60,71,80,90,91};
    }     
}
NetBeans指向该行的错误
data[10] = {10,20,30,40,50,60,71,80,90,91};
我该如何解决这个问题?
Pra*_*rav 602
data[10] = {10,20,30,40,50,60,71,80,90,91};
以上不正确(语法错误).这意味着您正在分配一个data[10]只能容纳元素的数组.
如果要初始化数组,请尝试使用Array Initializer:
int[] data = {10,20,30,40,50,60,71,80,90,91};
// or
int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};
注意两个声明之间的区别.在为声明的变量分配新数组时,new必须使用.
即使您更正了语法,访问data[10]仍然是不正确的(您只能访问data[0],data[9]因为Java中的数组索引是从0开始的).访问data[10]将抛出ArrayIndexOutOfBoundsException.
Ber*_*rez 26
当你创建一个大小为10的数组时,它分配了10个插槽但是从0到9.这个for循环可能会帮助你看到更好一点.
public class Array {
    int[] data = new int[10]; 
    /** Creates a new instance of an int Array */
    public Array() {
        for(int i = 0; i < data.length; i++) {
            data[i] = i*10;
        }
    }
}
小智 14
你可以做:
int[] data = {10,20,30,40,50,60,71,80,90,91};
Vin*_*yak 10
句法
 Datatype[] variable = new Datatype[] { value1,value2.... }
 Datatype variable[]  = new Datatype[] { value1,value2.... }
示例:
int [] points = new int[]{ 1,2,3,4 };
而不是学习非官方网站从oracle网站学习
链接如下:点击这里
*您可以找到初始化以及声明和完整描述*
int n; // size of array here 10
int[] a = new int[n];
for (int i = 0; i < a.length; i++)
{
    a[i] = Integer.parseInt(s.nextLine()); // using Scanner class
}
输入:10 //阵列大小10 20 30 40 50 60 71 80 90 91
显示数据:
for (int i = 0; i < a.length; i++) 
{
    System.out.println(a[i] + " ");
}
输出: 10 20 30 40 50 60 71 80 90 91