int [] x之间有什么区别;和int x [];?

时间:2012-01-20 14:05:34

标签: java arrays

  

可能重复:
  Difference between int[] array and int array[]

我确信这个问题已经被问到,只是写了标题来找到它,但令我惊讶的是它没有。我正在研究一个问题并提出这个问题。我试过这个:

int[] x = new int[1];
int y[] = new int[1];
x=y;
y=x;

并且编译器没有给我一个错误。那么这两个声明之间有什么区别吗?

3 个答案:

答案 0 :(得分:12)

语义没有区别。两种语法都是一样的。一些摘自JLS §10.2

  

[]可能会出现在开头的类型中   声明,或作为特定变量的声明者的一部分,   或两者,如本例所示:

byte[] rowvector, colvector, matrix[];
     

此声明相当于:

byte rowvector[], colvector[], matrix[][];

但是,正如Voo在下面的注释中所述,在单个语句中声明多个数组时,可能会对这些声明产生一些棘手的混淆。

答案 1 :(得分:7)

没有区别。

从C转换更容易,只是语法糖。在Java中int[] x是首选(和推荐)表示法。

答案 2 :(得分:1)

没有,这只是一个品味问题。有些人喜欢把它放在聚合类型旁边(因为觉得它是类型的一部分),其他人更喜欢把它放在变量名旁边(因为它更接近访问语法)。