我最近一直在思考定义数组的两种方式之间的区别:
int[]数组 int[]数组
有区别吗?
我最近一直在思考定义数组的两种方式之间的区别:
int[]数组 int[]数组
有区别吗?
当前回答
是的,完全一样。就我个人而言,我更喜欢
int[] integers;
因为它让任何阅读你代码的人都能一眼看出integers是一个int型数组,而不是
int integers[];
这并不是很明显,特别是当您在一行中有多个声明时。但同样,它们是相等的,所以这取决于个人偏好。
查看这一页关于Java中的数组的更深入的示例。
其他回答
这两种类型的声明在功能上没有区别。两者都声明数组为int。
但是int[] a将类型信息保存在一起,更详细,所以我更喜欢它。
它是从java所基于的C语言中借来的一种替代形式。
有趣的是,在java中有三种方法来定义一个有效的main方法:
public static void main(String[] args) public static void main(字符串args[]) public static void mainargs)
两者都可以。我建议你选择一个并坚持下去。(我做了第二个)
两者同样有效。但是不鼓励使用int[]形式,根据编码约定,int[]形式是首选。请参阅官方Java数组教程:
类似地,你可以声明其他类型的数组: byte [] anArrayOfBytes; [] anArrayOfShorts短; 长[]anArrayOfLongs; [] anArrayOfFloats浮动; 双[]anArrayOfDoubles; 布尔[]anArrayOfBooleans; char [] anArrayOfChars; String [] anArrayOfStrings; 你也可以把方括号放在数组的名字后面: 浮动anArrayOfFloats [];//不鼓励使用此表单 然而,惯例不鼓励这种形式;括号标识数组类型,应该与类型名称一起出现。
注意最后一段。
我建议阅读官方的Sun/Oracle教程,而不是一些第三方的教程。否则,你可能最终会学到不好的做法。
如前所述,没有太大区别(如果每行只声明一个变量)。
请注意,SonarQube将你的第二个情况视为一个次要的代码气味:
数组指示符“[]”应该在类型上,而不是变量上(squid:S1197) 数组指示符应该始终位于类型上,以便更好地编写代码 可读性。否则,开发人员必须同时查看类型和 变量名,以了解变量是否为数组。 不合规代码示例 int[][]矩阵;/ /不合格 int[][]矩阵;/ /不合格 兼容的解决方案 int[][]矩阵;/ /兼容