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

inta[][]=newint[3][2];a[0]={1,6};报错:第二句是非法表达式。为什么?我是初学者,我想为这个三维数组的第一维赋值,哪位高手能指出我的程序到底... int a[][] = new int[3][2];
a[0] = {1,6};
报错:第二句是非法表达式。为什么?我是初学者,我想为这个三维数组的第一维赋值,哪位高手能指出我的程序到底错在哪了,为什么不能这样赋值?
高手能不能详细解释一下:我写的为什么不对。
展开
 我来答
写在枫叶上的故事
推荐于2019-10-03 · TA获得超过2.6万个赞
知道答主
回答量:164
采纳率:0%
帮助的人:2.6万
展开全部

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},}

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

匿名用户
2008-11-27
展开全部
因为你写的第一句是定义一个二维数组,第二句是一个一位数组赋值,而且你第二句是一维数组赋值语句的话是a[0]=1或a[0]=6,如果是给二维数组赋值的话是a[0][0]=1;a[0][1]=6;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友80cde99
2008-11-27 · 超过20用户采纳过TA的回答
知道答主
回答量:169
采纳率:0%
帮助的人:75.4万
展开全部
你要搞清楚java中的数组名是引用,二维数组中,第一维中存着第二维的引用,类似于C中的指针,第二维中才放着数据。而如果第二维中放的数据是引用数据类型的话,那第二维中放的也是引用,指向存放引用数据类型的地址。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尼日舟
2008-11-27 · 超过27用户采纳过TA的回答
知道答主
回答量:176
采纳率:0%
帮助的人:0
展开全部
compiler会认为你在试图把a 看做一个一维数组。
正确是a[0][0] = 1; a[0][1] = 6
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
柠檬茶的杯子
2008-11-27 · 超过18用户采纳过TA的回答
知道答主
回答量:256
采纳率:0%
帮助的人:64.1万
展开全部
定义的是3行2列的数组啊!
为第一行赋值:
int a[][] = new int[3][2];
a[0][0]=100;
a[0][1]=200;
a[0][2]=300;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(10)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式