読者です 読者をやめる 読者になる 読者になる

C#_二次元配列 の初期化・要素代入

配列に悩まされるのでメモ2。めっちゃ分からなくなる。

[ , ] 変数 = new 型[ 要素の数 ( ) ,  1 つの要素に格納する数 ( ) ] ;

※ Memo
配列を考える時、座標で考えている。hoga[1,2] は y = 1, x = 2。
y は縦軸だから、hoga[列, 行] と思いがちだが、
y番号を表し、x番号を表しているので注意!

 

int[,] a は 3 行 4列 の二次元配列を宣言 & 確保

int[,] b は 3 行 4列 の以下の二次元配列を初期化
ex) b[0] の要素は 一次元配列が代入されており、その要素は[ 1,  2,  3,  4]。
     [0]  [1]  [2]  [3]
[0][ 1,   2,   3,   4]
[1][11, 12, 13, 14]
[2][21, 22, 23, 24]

 

int[,] a = new int[3, 4];
int[,] b = new int[,] {
    {  1,  2,  3,  4 },
    { 11, 12, 13, 14 },
    { 21, 22, 23, 24 }
};

//a の配列に1から12までの数を代入
int number = 1;
for (int i = 0; i < 3; i++)
{
    for (int j = 0; j < 4; j++)
    {
        a[i, j] = number;
        number++;
       
        //b の配列の要素を出力
        Console.WriteLine(b[i, j]);
    }
}

 

宣言時の要素の数(サイズ) と 代入・列挙の時の index異なる
ex) b 変数の 24 を取得したい時は、 b[2, 3] とする。

 

以上。

実践で使用するとなると、
宣言と配列の長さを確保しているだけの a 配列だろうか。

http://www.kushiro-ct.ac.jp/yanagawa/ex-2016/1-tg/02/index.html