Menu
Coddy logo textTech

Declaring and Initializing 2D

CoddyのC#ジャーニー「ロジックとフロー」セクションの一部 — レッスン 2/66。

C# では、2 次元配列は配列の配列であるジャグ配列を使用して作成でき、グリッドのような構造でデータを格納できます。

3行4列の整数型のジャグ配列を作成するには:

int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];

上記のコードは、すべての要素が 0 で初期化された、次のような 2 次元配列を作成します:

[0, 0, 0, 0]
[0, 0, 0, 0]
[0, 0, 0, 0]

ジャグ配列を値で初期化:

int[][] matrix = new int[2][];
matrix[0] = new int[] {1, 2, 3};
matrix[1] = new int[] {4, 5, 6};

これは2行3列の2次元配列を作成し、次の値を格納します:

[1, 2, 3]
[4, 5, 6]

行数と列数を取得するには:

int rows = matrix.Length;           // Returns 2
int columns = matrix[0].Length;     // Returns 3 (for the first row)

2D 配列の要素にアクセスするには、行と列の2つのインデックスが必要です。

特定の位置(行 1、列 2)に値を代入する:

grid[1][2] = 42;

特定の位置(行 0、列 3)から値を取得:

int value = grid[0][3];

配列のインデックスは 0 から始まることを覚えておいてください。有効な範囲は以下の通りです:

  • 行: 0 から 2 (3 行の配列の場合)
  • 列: 0 から 3 (4 列の配列の場合)

これらの範囲外の要素にアクセスしようとすると(例: grid[3][2])、IndexOutOfRangeException が発生します。

チートシート

C#でジャグ配列(2次元配列)を作成:

int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];

値で初期化:

int[][] matrix = new int[2][];
matrix[0] = new int[] {1, 2, 3};
matrix[1] = new int[] {4, 5, 6};

次元を取得:

int rows = matrix.Length;           // 行数
int columns = matrix[0].Length;     // 最初の行の列数

2つのインデックス[row][column]を使用して要素にアクセス:

grid[1][2] = 42;        // Assign value
int value = grid[0][3]; // Read value

配列のインデックスは0から始まります。範囲外のインデックスにアクセスするとIndexOutOfRangeExceptionがスローされます。

自分で試してみよう

このレッスンにはコードチャレンジは含まれていません。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ロジックとフローのすべてのレッスン