我最近一直在思考定义数组的两种方式之间的区别:
int[]数组 int[]数组
有区别吗?
我最近一直在思考定义数组的两种方式之间的区别:
int[]数组 int[]数组
有区别吗?
当前回答
它们是一样的,但它们之间有一个重要的区别:
// 1.
int regular, array[];
// 2.
int[] regular, array;
在1。Regular只是一个int,而不是2。其中regular和array都是int类型的数组。
因此,你的第二种说法更可取,因为它更清楚。根据Oracle的本教程,第一种表单也不建议使用。
其他回答
是的,有区别。
Int [] a = new Int [100];// 'a'本身不是数组,数组存储为地址 在内存的其他地方,'a'只保存该地址
Int b[] = new Int [100];//当创建像cleary这样的数组时,显示'b'是一个数组,并且它 整数类型。
在Java中,这只是说同一件事的不同语法方法。
它们完全相等。Int[]数组是首选样式。int array[]只是作为等效的c兼容样式提供。
它是从java所基于的C语言中借来的一种替代形式。
有趣的是,在java中有三种方法来定义一个有效的main方法:
public static void main(String[] args) public static void main(字符串args[]) public static void mainargs)
如前所述,没有太大区别(如果每行只声明一个变量)。
请注意,SonarQube将你的第二个情况视为一个次要的代码气味:
数组指示符“[]”应该在类型上,而不是变量上(squid:S1197) 数组指示符应该始终位于类型上,以便更好地编写代码 可读性。否则,开发人员必须同时查看类型和 变量名,以了解变量是否为数组。 不合规代码示例 int[][]矩阵;/ /不合格 int[][]矩阵;/ /不合格 兼容的解决方案 int[][]矩阵;/ /兼容