以下は、Java での明白で通常の配列の宣言と初期化です。
int r[], s[]; //<-------
r=new int[10];
s=new int[10];
[]
以下に示すように、宣言ステートメントでの位置が変更されると、非常によく似たケースが異なる動作をします。
int []p, q[]; //<-------
p=new int[10];
q=new int[10][10];
宣言を見てください。の位置がからに[]
変更されました。この場合、配列は型の配列の配列のように動作します(これは前のケースとはまったく異なります)。r[]
[]p
q
int
質問:q
この宣言でint []p, q[];
, が 2 次元配列として扱われるのはなぜですか?
追加情報:
次の構文は奇妙に見えます。
int []a[];
int a[][];
ただし、これは問題なく準拠しており、 orのように動作しint [][]a;
ます。
したがって、以下の場合はすべて有効です。
int [][]e[][][];
int [][][][][]f[][][][];