数组初始化的一个问题

niuniu20008 2008-09-14 12:07:44
前两天老师给我们讲了数组,今天讲到了二维数组以及多维数组,现在我有个关于数组初始化的问题:
这样声明和初始化数组没问题:in[][] a = {{1,2},{2,4},{3,4}};
可int[][] b =new int[3][2];b[0] = {1,2};就不可以了,为什么呢?
当把b[0] = {1,2}改成b[0] = new int[]{1,2};
课堂上把老师都难住了,也没给我们讲为什么?现在请教各位大侠指导下小虾米我^_^
...全文
161 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
宋玮-深圳 2008-09-14
  • 打赏
  • 举报
回复
不是2维,1维数组一样有这个问题
int[] a = new int[3];
a[0] = 1;
a[1] = {2};

a[1]赋值就报错了,提示如下:Array constants can only be used in initializers

这就验证了我的猜想:)

类似{1,2}的数组常量只可以用来初始化,并不是用来赋值的。 一个{2}显然不可以转换成int
niuniu20008 2008-09-14
  • 打赏
  • 举报
回复
哦,有点明白了,不过我电脑提示是:非法的表达式开始。int a = {;也不可以。int a ='{';是可以的,类似{1,2}是不能赋值的,谢谢。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧