C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で多次元配列を定義する方法|宣言・初期化・出力の手順を解説

C#では、複数の次元を持つ「多次元配列」を扱うことができます。この記事では、2次元配列の宣言方法から初期化、forループを使った要素の出力まで、具体的なコード例とともにわかりやすく解説します。

2次元配列の宣言

文字列型の2次元配列は、次のようにカンマを使って宣言します。

string[] names;

2次元配列は、行と列を持つ「表(テーブル)」のようなイメージで考えると理解しやすいでしょう。x行・y列のデータをまとめて管理したい場合に便利です。

多次元配列の初期化

多次元配列は、各行の初期値を波括弧 { } で囲んで指定することで初期化できます。以下は、4行×4列のint型2次元配列を初期化する例です。

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列の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

このように、外側のループで行、内側のループで列を処理することで、2次元配列の全要素に順番にアクセスできます。多次元配列を扱う際の基本的なパターンなので、ぜひ覚えておきましょう。

  1. JavaScriptでメソッドを定義するには?初心者向けに基本から解説

    JavaScriptのメソッドとは?JavaScriptにおけるメソッドとは、オブジェクトに対して実行される「動作(アクション)」のことです。メソッドの本体は関数定義であり、その関数がオブジェクトのプロパティ値として格納されます。つまり、「オブジェクトの中に組み込まれた関数」がメソッドであると考えると分かりやすいでしょう。メソッド定義の基本構文オブジェクトリテラルの中で、プロパティ名に続けて function キーワードを使い関数を定義するだけで、メソッドを作成できます。var オブジェクト名 = { プロパティ名: 値, メソッド名: function() { // 実行した

  2. JavaScriptで配列をreduceする方法|reduce()メソッドで配列要素を合計する

    JavaScriptのreduce()メソッドは、配列の各要素を先頭から順に処理し、その結果を1つの値にまとめる(畳み込む)ための配列メソッドです。数値の合計を求めるだけでなく、配列からオブジェクトを組み立てたり、条件に応じてデータを集約したりと、幅広い場面で活用されています。reduce()メソッドの基本構文 { return 戻り値; }, 初期値);accumulator(アキュムレータ):直前のコールバック関数が返した値(累積値)。最初のループでは初期値、または配列の第1要素が代入されます。currentValue:現在処理している配列の要素。初期値:累積値の出発点となる値。省略し