プログラミング言語 C Shape C# の 2 次元配列と多次元配列

C# の 2 次元配列と多次元配列

 
C# は、2 次元または 3 次元の多次元配列 (長方形配列とも呼ばれます) もサポートしています。多次元配列のデータはテーブル (行、列) に似た形式で格納されるため、行列とも呼ばれます。

 

多次元配列を作成するには、配列を宣言する角括弧内にコンマを追加する必要があります。次に例を示します。

int[,] arr=new int[3,3];        
int[,,] arr=new int[3,3,3];   

1. 2次元配列

多次元配列の最も単純な形式は 2 次元配列です。2 次元配列は、対応する数の行と列を持つテーブルと考えることができます。

arr[i, j]の形式を使用して、2 次元配列の各要素にアクセスできます。ここで、arr は配列の名前、i と j は配列要素のインデックスであり、図の行と列と同様です。

2. 2次元配列の初期化

2 次元配列の初期化は 1 次元配列の初期化と似ています。たとえば、3 行 4 列の整数配列を定義する場合は、次のメソッドを使用できます。

int[,] arr = new int[3,4]{
    {0, 1, 2, 3},
    {4, 5, 6, 7},
    {8, 9, 10, 11}
};
int[,] arr = new int[,]{
    {0, 1, 2, 3},
    {4, 5, 6, 7},
    {8, 9, 10, 11}
};
int[,] arr = {
    {0, 1, 2, 3},
    {4, 5, 6, 7},
    {8, 9, 10, 11}
};

3. 2 次元配列の要素にアクセスする

2 次元配列内の要素には、インデックス (行インデックスと列インデックス) によってアクセスすることもできます。次に例を示します。

int[,] arr = new int[3,4]{
    {0, 1, 2, 3},
    {4, 5, 6, 7},
    {8, 9, 10, 11}
};

int a = arr[1, 0];

上記の例では、 arr[1, 0]配列 arr の 2 行目の最初の要素を表します。

[例] 2 次元配列を定義し、配列内の各要素を走査します。

 using System;

namespace it-kiso.com
{
    class Demo
    {
        static void Main(string[] args){
            int[,] arr = new int[3,4]{
                {0, 1, 2, 3},
                {4, 5, 6, 7},
                {8, 9, 10, 11}
            };
           
            for(int i = 0; i < 3; i++){
                for(int j = 0; j < 4; j++){
                    Console.WriteLine("arr[{0},{1}] = {2}", i, j, arr[i,j]);
                }
            }
            Console.ReadLine();
        }
    }
} 

操作の結果は次のようになります。

arr[0,0] = 0
arr[0,1] = 1
arr[0,2] = 2
arr[0,3] = 3
arr[1,0] = 4
arr[1,1] = 5
arr[1,2] = 6
arr[1,3] = 7
arr[2,0] = 8
arr[2,1] = 9
arr[2,2] = 10
arr[2,3] = 11

「 C# の 2 次元配列と多次元配列」についてわかりやすく解説!絶対に観るべきベスト2動画

C#プログラミング入門 第12回 (2) ジャグ配列