当编写接受数组作为参数的Java函数时,函数定义是否应在类型或变量名称上包含括号(“[]”)?
如:
private int myFunction(int array[])
{
//do stuff here
}
...或
private int myFunction(int[] array)
{
//do stuff here
}
它们都“有效”,但两者之间是否存在技术差异?
答案 0 :(得分:15)
没有区别。但int[] array
被认为是惯用的Java。
逻辑是[]
是类型的一部分(数组是与标量不同的类型),因此int
和[]
应该共存。它也符合例如返回类型:
int[] foo() {
...
int[] x = new int[5];
return x;
}
答案 1 :(得分:2)
当存在单个变量时,它没有太大区别,但是当它用于定义多个变量时
int[] array1, array2;
将定义两个数组。
int array1[], i;
将定义一个数组和一个变量。
答案 2 :(得分:1)
两者之间没有技术差异。我从未见过第一个例子中规定或喜欢这种风格的风格指南。我也从未见过在第一个例子中使用该样式的开源Java代码。它总是 int[] array
。
答案 3 :(得分:0)
int[] array
对我更有意义,因为int[]
是类型,array
是名称。保持这些独立和标准化更有意义。