java高手:java定义二维数组问题

2024-12-01 17:33:12
推荐回答(5个)
回答1:

int a[][] = new int[3][2]; 表示定义一个三行二列的二维数组,但是a[0] = {1,6}; 是对一维数组进行赋值,而a是二维数组无法使用一维数组的赋值方法,所以程序会报错。

该代码的正确方法应该是:

int a[][] = new int[3][2]; 

a[0][0]=1;

a[0][1]=6;

扩展资料

java定义二维数组的方法:

1、动态初始化

数据类型 数组名 [ ][ ] = new 数据类型[m][n]

数据类型 [ ][ ]  数组名 = new 数据类型[m][n]

数据类型 [ ]   数组名 [ ] = new 数据类型[m][n]

举例:int [ ][ ]  arr=new  int [5][3];  也可以理解为“5行3例”

2、 静态初始化

数据类型 [ ][ ]   数组名 = {{元素1,元素2....},{元素1,元素2....},{元素1,元素2....}.....};

举例:int [ ][ ]  arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},}

参考资料来源:百度百科——二维数组

回答2:

因为你写的第一句是定义一个二维数组,第二句是一个一位数组赋值,而且你第二句是一维数组赋值语句的话是a[0]=1或a[0]=6,如果是给二维数组赋值的话是a[0][0]=1;a[0][1]=6;

回答3:

你要搞清楚java中的数组名是引用,二维数组中,第一维中存着第二维的引用,类似于C中的指针,第二维中才放着数据。而如果第二维中放的数据是引用数据类型的话,那第二维中放的也是引用,指向存放引用数据类型的地址。

回答4:

compiler会认为你在试图把a 看做一个一维数组。
正确是a[0][0] = 1; a[0][1] = 6

回答5:

定义的是3行2列的数组啊!
为第一行赋值:
int a[][] = new int[3][2];
a[0][0]=100;
a[0][1]=200;
a[0][2]=300;