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

C#でジャグ配列を初期化する方法【基本構文とサンプルコード付き】

ジャグ配列(Jagged Array)とは、「配列の中にさらに配列が格納されている」データ構造のことです。通常の二次元配列と異なり、内側にある各配列ごとに異なる長さを持たせられるのが大きな特徴です。

ジャグ配列の基本的な初期化方法

C#では、宣言と同時に次のように初期化できます。

int[][] rank = new int[2][]{new int[]{3,2,7}, new int[]{9,4,5,6}};

この例では、2つの配列を持つジャグ配列を作成しています。1つ目の配列には3つの要素、2つ目の配列には4つの要素が格納されており、それぞれ異なるサイズを持つ点に注目してください。

サンプルコード

以下は、ジャグ配列を初期化し、ネストしたforループですべての要素をコンソールに出力する完全なプログラム例です。

using System;
namespace ArrayApplication {
    class MyArray {
        static void Main(string[] args) {
            int[][] a = new int[][]{new int[]{0,0}, new int[]{1,2}, new int[]{2,4}};
            int i, j;
            for (i = 0; i < 3; 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

補足:より簡潔に書く方法

C#では、new int[][] の部分を省略し、初期化子だけでジャグ配列を定義することもできます。要素数が多い場合は、次のように改行して記述すると可読性が向上します。

int[][] a = {
    new int[]{0,0},
    new int[]{1,2},
    new int[]{2,4}
};

このようにジャグ配列を使いこなせば、行ごとに要素数が異なるデータ(三角行列や可変長のリストなど)を効率的に扱うことができます。

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

    C#では、複数の次元を持つ「多次元配列」を扱うことができます。この記事では、2次元配列の宣言方法から初期化、forループを使った要素の出力まで、具体的なコード例とともにわかりやすく解説します。2次元配列の宣言文字列型の2次元配列は、次のようにカンマを使って宣言します。string[] names;2次元配列は、行と列を持つ「表(テーブル)」のようなイメージで考えると理解しやすいでしょう。x行・y列のデータをまとめて管理したい場合に便利です。多次元配列の初期化多次元配列は、各行の初期値を波括弧 { } で囲んで指定することで初期化できます。以下は、4行×4列のint型2次元配列を初期化する例です

  2. C#でジャグ配列を定義する方法|宣言・初期化・要素アクセスの基本

    ジャグ配列(Jagged Array)とはジャグ配列とは、簡単に言えば「配列の配列」のことです。通常の二次元配列と異なり、各行の要素数を個別に設定できるため、柔軟なデータ構造を実現できるのが大きな特徴です。C#でint型のジャグ配列「points」を定義するには、次のように宣言します。int [][] points;ジャグ配列の初期化方法宣言したジャグ配列は、作成時に各要素となる配列を同時に初期化できます。以下のように、波括弧の中にさらに配列を記述していきます。int[][] points = new int[][]{new int[]{10,5},new int[]{30,40}, new