我最近一直在思考定义数组的两种方式之间的区别:

int[]数组 int[]数组

有区别吗?


当前回答

它们在语义上是相同的。添加int array[]语法只是为了帮助C程序员适应java。

Int[]数组更可取,而且更容易混淆。

其他回答

它们完全相等。Int[]数组是首选样式。int array[]只是作为等效的c兼容样式提供。

它是从java所基于的C语言中借来的一种替代形式。

有趣的是,在java中有三种方法来定义一个有效的main方法:

public static void main(String[] args) public static void main(字符串args[]) public static void mainargs)

最可取的选项是int[] a——因为int[]是类型,而a是名称。 (第二个选项与此相同,只是空格放错了位置)

它们在功能上没有区别。

有一个细微的区别,如果你碰巧在同一个声明中声明了多个变量:

int[] a, b;  // Both a and b are arrays of type int
int c[], d;  // WARNING: c is an array, but d is just a regular int

注意,这是一种糟糕的编码风格,尽管编译器几乎肯定会在您尝试使用d时捕捉到您的错误。

没有区别。

我更喜欢类型[]名称格式,很明显变量是一个数组(更少四处寻找它是什么)。

编辑:

哦,等等,有区别(我忘记了,因为我从来没有一次声明一个以上的变量):

int[] foo, bar; // both are arrays
int foo[], bar; // foo is an array, bar is an int.