C#で多次元配列を使う方法をわかりやすく解説
C#では、多次元配列を扱うことができます。多次元配列は「矩形配列(長方形配列)」とも呼ばれ、行と列を持つ表形式のデータを格納するのに適しています。
2次元配列の宣言方法
文字列型の2次元配列は、次のように宣言します。
string[] names;
2次元配列は、x行・y列からなる表のような構造としてイメージすると理解しやすくなります。
多次元配列の初期化
多次元配列は、行ごとに波括弧 { } で囲んだ値を指定することで初期化できます。以下の例では、4行×4列のint型配列を作成しています。
int[] a = new int[4,4] {
{0, 1, 2, 3}, /* 0行目の初期値 */
{4, 5, 6, 7}, /* 1行目の初期値 */
{8, 9, 10, 11}, /* 2行目の初期値 */
{12, 13, 14, 15} /* 3行目の初期値 */
};このように、各行の要素を波括弧の中にカンマ区切りで並べることで、宣言と同時にすべての値を設定できます。
多次元配列の使用例
ここで、C#で多次元配列を実際に操作するサンプルプログラムを見てみましょう。次のコードは、5行×2列の配列を作成し、ネストしたforループですべての要素を出力するものです。
using System;
namespace Program {
class Demo {
static void Main(string[] args) {
/* 5行2列の配列 */
int[] a = new int[5, 2] {{0,0}, {1,2}, {2,4}, {3,6}, {4,8}};
int i, j;
/* 各配列要素の値を出力 */
for (i = 0; i < 5; i++) {
for (j = 0; j < 2; j++) {
Console.WriteLine("a[{0},{1}] = {2}", i, j, a[i,j]);
}
}
Console.ReadKey();
}
}
}実行結果
上記のプログラムを実行すると、各要素が「行番号, 列番号 = 値」の形式で順番に出力されます。
a[0,0] = 0 a[0,1] = 0 a[1,0] = 1 a[1,1] = 2 a[2,0] = 2 a[2,1] = 4 a[3,0] = 3 a[3,1] = 6 a[4,0] = 4 a[4,1] = 8
外側のループが行(第1添字)、内側のループが列(第2添字)に対応しており、a[i, j] のようにカンマで区切ってインデックスを指定することで、任意の要素にアクセスできます。この基本を押さえておけば、3次元以上の配列も同じ要領で扱えるようになります。
-
C#で多次元配列を定義する方法|宣言・初期化・出力の手順を解説
C#では、複数の次元を持つ「多次元配列」を扱うことができます。この記事では、2次元配列の宣言方法から初期化、forループを使った要素の出力まで、具体的なコード例とともにわかりやすく解説します。2次元配列の宣言文字列型の2次元配列は、次のようにカンマを使って宣言します。string[] names;2次元配列は、行と列を持つ「表(テーブル)」のようなイメージで考えると理解しやすいでしょう。x行・y列のデータをまとめて管理したい場合に便利です。多次元配列の初期化多次元配列は、各行の初期値を波括弧 { } で囲んで指定することで初期化できます。以下は、4行×4列のint型2次元配列を初期化する例です
-
C#で配列を宣言する方法とは?基本構文とサンプルコードを解説
C#で配列を宣言するには、次の構文を使用します。 datatype[ ] 配列名; それぞれの構成要素の意味は以下のとおりです。 datatype … 配列に格納する要素のデータ型を指定します。 [ ] … この変数が配列であることを示します。 配列名 … 配列につける名前を指定します。 たとえば、double型の配列「balance」を宣言する場合は次のように書きます。 double[ ] balance; なお、この段階では配列の実体(メモリ領域)はまだ確保されていません。実際に要素を格納するには、new演算子を使って配列をインスタンス化し、要素数を指定する必要があります。 続いて、