黑马程序员技术交流社区
标题:
二维数组这样定义为什么不行呢?
[打印本页]
作者:
石头stone
时间:
2016-5-16 22:22
标题:
二维数组这样定义为什么不行呢?
int[][] arr = new int[3][];
arr[0] = {1,2,3};
这样为什么会报错呢?
作者:
static小白
时间:
2016-5-16 22:45
arr[0]=new arr[3];
作者:
static小白
时间:
2016-5-16 22:56
int[][]arr= new int [3][];
arr[0][0]=1;
这样是可以的,只能一个一个数的赋值。
作者:
zhangshouwei
时间:
2016-5-16 23:06
arr[0] = {1,2,3};错的不能动静结合
改为arr[0]=new int[]{1,2,3};
作者:
石头stone
时间:
2016-5-18 22:34
zhangshouwei 发表于 2016-5-16 23:06
arr[0] = {1,2,3};错的不能动静结合
改为arr[0]=new int[]{1,2,3};
懂了,谢谢
作者:
Noodles.
时间:
2016-5-19 00:11
这是一个静态访问非静态的问题!
作者:
我是你岁哥❤环
时间:
2016-5-19 00:14
int[][] arr = new int[3][];只是在堆内存中开辟了3个存储一维数组的空间,但是并没有为每个一维数组开辟存储空间的大小
所以需要为每个一维数组初始化的时候,还需要使用new关键字,开辟存储元素的空间
arr[0] = new int[]{1,2,3};
作者:
hycold
时间:
2016-5-19 00:31
学到了.........
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2