黑马程序员技术交流社区
标题:
二维数组定义方式的理解问题
[打印本页]
作者:
梅雄新
时间:
2012-2-8 00:12
标题:
二维数组定义方式的理解问题
本帖最后由 梅雄新 于 2012-2-8 22:37 编辑
我知道定义二维数组的方式有两种如
int a[][]={{0,0},{1,1},{2,2}};
int a[][]=new int[2][3];然后赋值
为什么不能
int a[2][3]={{0,0},{1,1},{2,2}};
作者:
张建银
时间:
2012-2-8 00:20
哥们好像写错了吧 int[][] a=new int[2][3];
int[2][3] a={{0,0},{1,1},{2,2}}如果是这样,int[2][3] 就不是Type类型了就成对象了
变量声明 一般是:类型+引用名
作者:
许涛
时间:
2012-2-8 01:04
int[2][3]的含义是:二维数组中有2个一维数组。每个一维数组中有3个元素。
应该这样书写:
int[][] arr = new int[2][3];
int[][] arr = new int[][] {{1,2,3},{4,5,6}}; 也可简写为:int[][] arr ={{1,2,3},{4,5,6}};
作者:
戴振良
时间:
2012-2-8 22:17
本帖最后由 戴振良 于 2012-2-8 22:19 编辑
这个还是把问题简单化吧,sun公司开发规定的,我们只要记住声明数组时不能指定其长度,否则编译时将出错就行了,如:int a[5];//这个样的声明是错误的
我个人认为,只要记住上面的规定就足够用的了,没必要去追究再深的。
作者:
余海龙
时间:
2012-2-8 22:30
int a[2][3]={{0,0},{1,1},{2,2}};
首先这样定义数组的想法就使错误的。
int a[] [] 中的两个中括号[] [] 是二维数组的标志,中括号中不能写东西。
前面可以写成:
1,int a[] [] = new int[2][3];
2,int[] a[] = new int[2][3];
3,int[][] a = new int[2][3];
而且数组定义时要么指定元素,要么必须给出长度。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2