工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C# ジャグ配列をマスターする:宣言、初期化、アクセス

C# ジャグ配列

このチュートリアルでは、C# のジャグ配列について学習します。実例を交えて、ジャグ配列の宣言、初期化、アクセス方法を解説します。

C# において、ジャグ配列は複数の配列を要素として持ちます。しかし多次元配列とは異なり、ジャグ配列内の各配列は異なるサイズを持つことができます。

ジャグ配列を学ぶ前に、以下を理解しておいてください:


C# ジャグ配列の宣言

C# でジャグ配列を宣言する構文は以下の通りです:

dataType[ ][ ] nameOfArray = new dataType[rows][ ];

例:

// ジャグ配列を宣言
int[ ][ ] jaggedArray = new int[2][ ];

ここで:

ジャグ配列の各要素も配列であるため、個々の配列のサイズを設定できます。例:

// 最初の配列のサイズを 3 に設定
jaggedArray[0] = new int[3];
// 2 番目の配列のサイズを 2 に設定
jaggedArray[1] = new int[2];

ジャグ配列の初期化

ジャグ配列の初期化にはいくつかの方法があります。例:

1. インデックス番号を使用

ジャグ配列を宣言後、インデックス番号で初期化します:

// 最初の配列を初期化
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 3;
jaggedArray[0][2] = 5;
// 2 番目の配列を初期化
jaggedArray[1][0] = 2;
jaggedArray[1][1] = 4;

ここで:

2. 要素のサイズを設定せずに初期化

// 文字列ジャグ配列を宣言
int[ ][ ] jaggedArray = new int[2] [ ];
// 各配列を初期化
jaggedArray[0] = new int[] {1, 3, 5};
jaggedArray[1] = new int[] {2, 4};

3. 宣言時にジャグ配列を初期化

int[ ][ ] jaggedArray = { new int[ ] {10, 20, 30}, new int[ ] {11, 22}, new int[ ] {88, 99} };

ジャグ配列の要素へのアクセス

インデックス番号を使用してジャグ配列の要素にアクセスできます。例:

// 2 番目の配列の最初の要素
jaggedArray[1][0];
// 2 番目の配列の 2 番目の要素
jaggedArray[1][1];
// 1 番目の配列の 2 番目の要素
jaggedArray[0][1];

例:C# ジャグ配列

using System;
namespace JaggedArray {
    class Program {
        static void Main(string[] args) {
            // ジャグ配列を作成
            int[ ][ ] jaggedArray = { new int[] {1, 3, 5}, new int[] {2, 4}, };
            // ジャグ配列の要素を出力
            Console.WriteLine("jaggedArray[1][0]: " + jaggedArray[1][0]);
            Console.WriteLine("jaggedArray[1][1]: " + jaggedArray[1][1]);
            Console.WriteLine("jaggedArray[0][2]: " + jaggedArray[0][2]);
            Console.ReadLine();
        }
    }
}

出力

jaggedArray[1][0]: 2
jaggedArray[1][1]: 4
jaggedArray[0][2]: 5

ここではジャグ配列内で:


ジャグ配列の反復処理

C# ではループを使用してジャグ配列の各要素を反復処理できます。例:

using System;
namespace JaggedArray {
    class Program {
        static void Main(string[] args) {
            // ジャグ配列を宣言
            int[][] jaggedArray = new int[2][];
            // ジャグ配列要素のサイズを設定
            jaggedArray[0] = new int[3];
            jaggedArray[1] = new int[2];
            // 最初の配列を初期化
            jaggedArray[0][0] = 1;
            jaggedArray[0][1] = 3;
            jaggedArray[0][2] = 5;
            // 2 番目の配列を初期化
            jaggedArray[1][0] = 2;
            jaggedArray[1][1] = 2;
            // 外側の for ループ
            for (int i = 0; i < jaggedArray.Length; i++) {
                Console.Write("Element "+ i +": ");
                // 内側の for ループ
                for (int j = 0; j < jaggedArray[i].Length; j++) {
                    Console.Write(jaggedArray[i][j] + " ");
                }
                Console.WriteLine();
            }
            Console.ReadLine();
        }
    }
}

出力

Element 0: 1 3 5
Element 1: 2 2

上記の例では、ネストした for ループでジャグ配列を反復処理しています。ここで:

1. 外側の for ループ

2. 内側の for ループ


多次元配列を要素とするジャグ配列

C# では、多次元配列をジャグ配列の要素として使用することもできます。例:

int[ ][ , ] jaggedArrayTwoD = new int[2][ , ] { new int[,] { {1, 8}, {6, 7} }, new int[,] { {0, 3}, {5, 6}, {9, 10} } };

ここでは、ジャグ配列の各要素が多次元配列です:

例を見てみましょう:

using System;
namespace JaggedArray {
    class Program {
        static void Main(string[] args) {
            // 2D 配列でジャグ配列を宣言・初期化
            int[][,] jaggedArray = new int[3][ , ] { new int[ , ] { {1, 8}, {6, 7} }, new int[ , ] { {0, 3}, {5, 6}, {9, 10} }, new int[ , ] { {11, 23}, {100, 88}, {0, 10} } };
            Console.WriteLine(jaggedArray[0][0, 1]);
            Console.WriteLine(jaggedArray[1][2, 1]);
            Console.WriteLine(jaggedArray[2][1, 0]);
            Console.ReadLine();
        }
    }
}

出力

8
10
100

上記の例では、次のコードに注目してください:

jaggedArray[0][0, 1]

ここで:

C言語

  1. 信頼性の高いエレクトロニクスのための高度なBGA検査技術
  2. 先進E-タングナノセンサアレイで液体生体分子を高精度検出
  3. C# 配列をマスターする:宣言、初期化、操作
  4. C# 多次元配列:2次元配列をコード例で徹底解説
  5. C++配列を関数に渡す完全ガイド:1次元・多次元配列の実例付き
  6. C++配列を徹底解説:宣言、初期化、ポインタ活用テクニック
  7. C++動的配列の確保をマスター:コード例付き実践ガイド
  8. C#コレクション実践チュートリアル:実例で学ぶ柔軟なデータ管理
  9. MATLAB:多次元配列と特殊配列をマスターする
  10. Java配列コピー技法:包括的ガイド
  11. Javaオブジェクト配列の作成:ステップバイステップガイド