C# 多次元配列

C# 数组C# 配列

C# は多次元配列をサポートしています。多次元配列は矩形配列とも呼ばれます。

string 変数の2次元配列は次のように宣言できます:

string [,] names;

または、int 変数の3次元配列は次のように宣言できます:

int [ , , ] m;

2次元配列

多次元配列の最も単純な形式は2次元配列です。2次元配列は、本質的に、1次元配列のリストです。

2次元配列は、x 行と y 列を持つテーブルと考えることができます。次は3行4列の2次元配列です:

C# 中的二维数组

したがって、配列内の各要素は、a[ i , j ] という形式の要素名で識別されます。ここで a は配列名であり、i と j は a 内の各要素を一意に識別する添字です。

2次元配列の初期化

多次元配列は、括弧内で各行に値を指定することで初期化できます。次は3行4列の配列です。

int [,] a = new int [3,4] {
 {0, 1, 2, 3} ,   /*  初始化索引号为 0 的行 */
 {4, 5, 6, 7} ,   /*  初始化索引号为 1 的行 */
 {8, 9, 10, 11}   /*  初始化索引号为 2 的行 */
};

2次元配列の要素へのアクセス

2次元配列内の要素は、添字(つまり配列の行インデックスと列インデックス)を使用してアクセスします。例:

int val = a[2,3];

上記のステートメントは、配列内の3行目の4番目の要素を取得します。上の図で確認できます。次のプログラムを見てみましょう。ネストされたループを使用して2次元配列を処理します。

例

using System;

namespace ArrayApplication
{
    class MyArray
    {
        static void Main(string[] args)
        {
            /* 5行2列の配列 */
            int[,] a = new int[5, 2] {{0,0}, {1,2}, {2,4}, {3,6}, {4,8} };

            int i, j;

            /* 配列内の各要素の値を出力 */
            for (i = 0; i < 5; i++)
            {
                for (j = 0; j < 2; j++)
                {
                    Console.WriteLine("a[{0},{1}] = {2}", i, j, a[i,j]);
                }
            }
           Console.ReadKey();
        }
    }
}

上記のコードがコンパイルおよび実行されると、次の結果が生成されます:

a[0,0]: 0
a[0,1]: 0
a[1,0]: 1
a[1,1]: 2
a[2,0]: 2
a[2,1]: 4
a[3,0]: 3
a[3,1]: 6
a[4,0]: 4
a[4,1]: 8

C# 数组C# 配列

その他の拡張