将数组传递给Java函数

时间:2011-12-24 15:19:27

标签: java

  

可能重复:
  java - Array brackets after variable name

当编写接受数组作为参数的Java函数时,函数定义是否应在类型或变量名称上包含括号(“[]”)?

如:

private int myFunction(int array[])
{
    //do stuff here
}

...或

private int myFunction(int[] array)
{
    //do stuff here
}

它们都“有效”,但两者之间是否存在技术差异?

4 个答案:

答案 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是名称。保持这些独立和标准化更有意义。