多次元配列の要素の型をジャグ配列にすることにより、ジャグ配列の多次元配列を構築することができます。 また逆に、ジャグ配列の要素の型を多次元配列にすることにより、多次元配列のジャグ配列を構築することもできます。 さらに、多次元配列の多次元配列も構築することができます。
一般に、このようなデータ型が必要になる場合はまれで、必要になったとしてもよりシンプルなデータ型で表現可能である場合がほとんどだと思われます。 以下はあくまでこのようなことも可能ということを示す目的で、多次元配列のジャグ配列・ジャグ配列の多次元配列・多次元配列の多次元配列を構築する例をあげます。
2次元配列の2段ジャグ配列を構築する
using System;
class Sample {
static void Main()
{
// 2次元配列の2段ジャグ配列
int[][][,] jaggedMultidimensional = {
new int[][,] {
// [0][0][,]
new int[,] {
{0, 1},
{2, 3}
},
// [0][1][,]
new int[,] {
{4, 5},
{6, 7}
},
},
new int[][,] {
// [1][0][,]
new int[,] {
{8, 9},
{10, 11}
}
},
};
Console.WriteLine(jaggedMultidimensional[0][0][1, 1]);
Console.WriteLine(jaggedMultidimensional[0][1][1, 1]);
Console.WriteLine(jaggedMultidimensional[1][0][1, 1]);
}
}
実行結果
3 7 11