C# 入門 & 実践 / C sharp
4-3. 配列 多次元配列
4-3-1. 多次元配列、固定
この方法では、2次元、3次元の全てのマスに値を持つ形となります。
static void Main()
{
// 二次元配列
int[,] po = {{1,2,3},{9,8,7}};
Console.WriteLine("{0}", po[1,1]);
// 三次元
int[,,] popo = new int[2,2,2];// 0 で初期化
int[,,] popo2 = { { { 1, 2 }, { 3, 4 } }, { { 5, 6 }, { 7, 8 } } };
Console.WriteLine("{0} / {1}", popo[0, 0, 0], popo2[0, 0, 0]);
Console.WriteLine("{0} / {1}", popo[1, 1, 1], popo2[1, 1, 1]);
}
4-3-2. ジャグ配列
配列の配列であり、すべてのマスを埋める必要はありません。
static void Main()
{
// 二次元配列
int[][] po = new int[2][];
po[0] = new int[4];
po[1] = new int[2];
Console.WriteLine("{0}", po[0][3]);
Console.WriteLine("{0}", po[1][1]);
// こちらはエラー!!!
Console.WriteLine("{0}", po[1][3]);
}
先ほどと違い2次元目のサイズは、個別なので po[1][3] はないので、エラーとなります。
「 ハンドルされていない例外: System.IndexOutOfRangeException: インデックスが配列の境界外です。 」
4-2. 配列 params キーワード «
4. C# 入門 Level 2 »
4-4. 配列の型変換
C# 入門 & 実践 / C sharp