Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 多次元配列 | 配列
C#の基礎

book多次元配列

メニューを表示するにはスワイプしてください

配列の中にさらに配列を持つこともできます。このような配列は多次元配列と呼ばれます。多次元配列は、データを表形式(行と列)や行列の形で保存したい場合に便利です。

二次元配列は、次の構文で宣言できます:

main.cs

main.cs

copy
1
datatype[][] arrayName = new datatype[lengthX, lengthY];

上記の構文で作成された配列は、長さ(サイズ)が lengthX となり、各要素はサイズ lengthY の配列になります:

main.cs

main.cs

copy
1
int[,] numbers = new int[3,3];

上記の例では、3x3 サイズの新しい二次元配列(マトリックス)を作成しています。これは 9 個の整数値を格納できることを意味します。2 次元配列は、次の構文で初期化できます。

main.cs

main.cs

copy
12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

実際の値を用いた例を考える:

main.cs

main.cs

copy
12345678910111213141516171819202122
using 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

main.cs

copy
1
arrayName[row, column];

例えば、6 配列(図に示されている)から値 numbers を取得したい場合、インデックス [2][2] の要素を使用します。これは2番目の行インデックスと2番目の列インデックスに対応します。

main.cs

main.cs

copy
123456789101112131415161718
using 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

main.cs

copy
123
int[,,] 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

上記のコードでは、myArray3D60 要素(3x4x5)を持ち、myArray4D1800 要素(5x4x9x10)を持ちます。

以下は、3次元配列を初期化する方法です。

main.cs

main.cs

copy
123456
int[,,] 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} } };
question mark

foods 配列から「Pumpkin」要素にアクセスする正しいコードはどれですか:

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 5.  3

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 5.  3
some-alt