多次元配列
メニューを表示するにはスワイプしてください
配列の中にさらに配列を持つこともできます。このような配列は多次元配列と呼ばれます。多次元配列は、データを表形式(行と列)や行列の形で保存したい場合に便利です。
二次元配列は、次の構文で宣言できます:
main.cs
1datatype[][] arrayName = new datatype[lengthX, lengthY];
上記の構文で作成された配列は、長さ(サイズ)が lengthX となり、各要素はサイズ lengthY の配列になります:
main.cs
1int[,] numbers = new int[3,3];
上記の例では、3x3 サイズの新しい二次元配列(マトリックス)を作成しています。これは 9 個の整数値を格納できることを意味します。2 次元配列は、次の構文で初期化できます。
main.cs
12345datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };
実際の値を用いた例を考える:
main.cs
12345678910111213141516171819202122using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }
上記は3x4の行列で、12個の要素を格納できる。次の図は、3x3の行列を視覚的に表したものである:
多次元配列のインデックス指定は、通常の配列と同様です。行と列のインデックスを指定します。
main.cs
1arrayName[row, column];
例えば、6 配列(図に示されている)から値 numbers を取得したい場合、インデックス [2][2] の要素を使用します。これは2番目の行インデックスと2番目の列インデックスに対応します。
main.cs
123456789101112131415161718using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }
宣言構文にカンマを追加することで、より高次元の配列も作成可能。
main.cs
123int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern
上記のコードでは、myArray3D は 60 要素(3x4x5)を持ち、myArray4D は 1800 要素(5x4x9x10)を持ちます。
以下は、3次元配列を初期化する方法です。
main.cs
123456int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
すべて明確でしたか?
フィードバックありがとうございます!
セクション 5. 章 3
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 5. 章 3