2次元配列

2次元配列とは、1次元配列の要素に配列を格納した配列のこと。

構文

宣言1

データ型[][] 変数名; // 宣言

宣言2

データ型 変数名[][]; // 宣言

宣言と同時に生成1

データ型[][] 変数名 = new int[配列要素数][配列要素数]; // 宣言と同時に生成
変数名[インデックス][インデックス] =; // 代入(初期化)

宣言と同時に生成2

データ型 変数名[][] = new int[配列要素数][配列要素数]; // 宣言と同時に生成
変数名[インデックス][インデックス] =; // 代入(初期化)

宣言と同時に代入(初期化)1

データ型[][] 変数名 = {
 { 値1-1, 値1-},
 { 値2-1, 値2-},
 { 値3-1, 値3-}
};

宣言と同時に代入(初期化)2

データ型 変数名[][] = {
 { 値1-1, 値1-},
 { 値2-1, 値2-},
 { 値3-1, 値3-}
};

int型の値を扱う2次元配列の例。

宣言と同時に代入(初期化)

1
2
3
4
5
int[][] $array = {
 { 1, 2 },
 { 3, 4 },
 { 5, 6 }
};

サンプル

int型の値を扱う2次元配列のサンプル。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package samplePackage;

public class SampleClass {

 public static void main( String[] args ){

  // 宣言と同時に代入(初期化)。
  int[][] $array = {
   { 1, 2 },
   { 3, 4 },
   { 5, 6 }
  };

  System.out.println( "$array[0][0]の値は、「" + $array[0][0] + "」である。" );
  System.out.println( "$array[0][1]の値は、「" + $array[0][1] + "」である。" );
  System.out.println( "$array[1][0]の値は、「" + $array[1][0] + "」である。" );
  System.out.println( "$array[1][1]の値は、「" + $array[1][1] + "」である。" );
  System.out.println( "$array[2][0]の値は、「" + $array[2][0] + "」である。" );
  System.out.println( "$array[2][1]の値は、「" + $array[2][1] + "」である。" );

  System.out.println( "for文で展開" );
  for( int $i = 0; $i < $array.length; $i++ ){
   for( int $i2 = 0; $i2 < $array[$i].length; $i2++ ){
    System.out.println( "$array[" + $i + "][" + $i2 + "]の値は、「" + $array[$i][$i2] + "」である。" );
   }
  }
 }

}

実行結果

$array[0][0]の値は、「1」である。
$array[0][1]の値は、「2」である。
$array[1][0]の値は、「3」である。
$array[1][1]の値は、「4」である。
$array[2][0]の値は、「5」である。
$array[2][1]の値は、「6」である。
for文で展開
$array[0][0]の値は、「1」である。
$array[0][1]の値は、「2」である。
$array[1][0]の値は、「3」である。
$array[1][1]の値は、「4」である。
$array[2][0]の値は、「5」である。
$array[2][1]の値は、「6」である。