A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张帅 黑马帝   /  2011-12-16 10:23  /  3062 人查看  /  15 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张帅 于 2011-12-16 20:39 编辑

求这两种方式的区别,虽然不重要,但是很想搞懂
                int[] arr = {3,4,5,6}
                int arr[] = {3,4,5,6}  //这个也对,但建议不要这么写这么写

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

15 个回复

倒序浏览
习惯问题  都对的 ,因为大部分人都是按照第一种写的。

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
这个只是java里边定数组的写法.就想一种规则一样  两种写法都对 .结果没什么区别! 只是看你习惯用哪一种写法了!只要不错就行了

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
张帅 黑马帝 2011-12-16 10:31:08
板凳
f64412300 发表于 2011-12-16 10:28
习惯问题  都对的 ,因为大部分人都是按照第一种写的。

我想知道原理是什么
回复 使用道具 举报
张帅 黑马帝 2011-12-16 10:31:25
报纸
我想知道原理是什么
回复 使用道具 举报
没有区别, 但是第一种一眼就明白 arr变量是 int[]类型, 即整数数组类型。
第2种int arr[] = {3,4,5,6}  感觉 arr[] 是一个 int类型变量,  但实际上是一个意思,只是不那么直观。

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
刘基军 黑马帝 2011-12-16 11:13:33
7#
张帅 发表于 2011-12-16 10:31
我想知道原理是什么

就理解为:Java对于这两种写法都支持,按个人书写习惯进行选择

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
郭繁森 黑马帝 2011-12-16 11:31:12
8#
毕老师不是讲:第一种更直观些么。   自己的理解是:int【】的存在就是一个一维数组的标志,【】放前面后面都一样。就像理发店的工作服和编号,衣服(int)穿好,      至于编号([])牌放左肩膀还是右肩膀都无所谓的
回复 使用道具 举报
刘志祥 黑马帝 2011-12-16 12:27:04
9#
要达到同一目的(定义数组)的两种不同方法。殊途同归。
不要钻牛角尖。

评分

参与人数 2技术分 +1 黑马币 +1 收起 理由
张帅 + 1
吴上储 + 1

查看全部评分

回复 使用道具 举报
李建锋 黑马帝 2011-12-16 12:33:03
10#
第一种更专业,第二种也可以,一般情况下都写第一种!
回复 使用道具 举报
郝锡强 黑马帝 2011-12-16 13:02:15
11#
张老师这么说的,int [] arr = {1,2,3}
一看是个int类型的,看到[],是个数组,基本就明白了
回复 使用道具 举报
张帅 黑马帝 2011-12-16 15:27:36
12#
嗯,经过各位的讲解,大概了解了,以后了买本java编程思想,仔细研究下编译原理
回复 使用道具 举报
舒远 黑马帝 2011-12-16 16:32:48
13#
官方推荐第一种写法,一眼就能看出是int类型的数组。也是习惯这么写的。有些公司开发规范中也有明确规定要使用第一种方式。虽然这两种方式实现的效果完全一样。但是对于后期软件的维护、团队协作等方面还是有很大好处的。从开始就养成好的习惯还是有必要的。
回复 使用道具 举报
戴振良 黑马帝 2011-12-16 17:43:48
14#
个人习惯吧!编译原理不需要去搞懂个人认为,因为张孝祥老师的视频已经说的很清楚了,两种用法没有区别的,
但是用int[] arr是比较直观定义了一个数组arr,
用int arr[],就有可能误认为是定义了一个arr[]变量
现在只要知道功能一样就行了,至于你喜欢用哪一个就用哪一个,不用去搞懂原理,也不用管别人常用哪一个。就像不通语言的“方法”和“函数”,我们也是知道是一个意思的就行了,不用去管为什么那个语言里叫函数,那个语言里叫方法。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
常文艺 黑马帝 2011-12-16 22:02:10
15#
int[] arr = {3,4,5,6}//[]作用后面的所有变量名
                int arr[] = {3,4,5,6} //[]仅作用前面的变量名
如 int[]x,y[] //x是一维数祖,y是2维数组
相当于 int[]x
int[][] y

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
窦超 黑马帝 2011-12-19 22:08:51
16#
两种都可以,另外在定义数组的时候更应该多注意角标越界及空指针异常等情况。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马