Difference between int[] variableName; and int variableName[];
arrays, coding-style, declaration, java, variables
Solution
Although both syntaxes are equivalent, the `int[] variableName;` syntax is preferred. The `int variableName[];` syntax is allowed just for making comfortable all the C/C++ programmers transitioning to Java.
One could argue that `int[] x` clearly states that integer array is the type of x, whereas in `int x[]` the actual type is split in two parts, one before and the other after the `x` variable, reading like integer is the type of the variable x which is an array making the declaration less readable and potentially confusing to a newcomer.
The readability problem is exacerbated if the array has more dimensions, for example all of these declarations are equivalent and valid:
int x[][][];
int[] x[][];
int[][] x[];
int[][][] x; // this one is the easiest to read!
Also notice that the same considerations apply to all these valid, equivalent method declarations (the return type is the same in all cases) - but once again the last one is simpler to read:
int m() [][][] {return null;}
int[] m() [][] {return null;}
int[][] m() [] {return null;}
int[][][] m() {return null;} // this one is the easiest to read!
Problem
Is there any difference between between these two array declaration syntax in java? ``` int[] variableName; ``` and ``` int variableName[]; ``` Which one is preferred?