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

C# 多次元配列:2次元配列をコード例で徹底解説

C# 多次元配列

このチュートリアルでは、C# の多次元配列、特に 2 次元配列を明確なコードスニペットとともに探求します。

多次元配列に入る前に、C# の 1 次元配列を復習してください。

多次元配列では、各要素がそれ自体配列です。例:

int[ ] x = { { 1, 2 ,3}, { 3, 4, 5 } };

ここでは x は {1, 2, 3} と {3, 4, 5} という行を含む 2 次元配列です。各行は 3 要素の配列です。


C# における 2 次元配列

2 次元配列は本質的に行と列のテーブルです。配列の要素は 1 次元配列です。

C# 多次元配列:2次元配列をコード例で徹底解説

画像では、行 {1, 2, 3} と {3, 4, 5} が 2D 配列の 2 行を表しています。

1. 宣言

2D 配列は以下のように宣言します:

int[ ] x = new int [2, 3];

ここでは x は 2 行 3 列、合計 6 個の値を保持できます。

注意:ブラケット間の単一のカンマ ([ , ]) が 2 次元配列を示します。


2. 初期化

宣言時に配列を初期化できます:

int[ ] x = { { 1, 2 ,3}, { 3, 4, 5 } };

またはサイズと値を同時に指定:

int[ ] x = new int[2, 3]{ {1, 2, 3}, {3, 4, 5} };

3. 要素へのアクセス

ゼロベースのインデックスを使用:x[row, column]。例:

// 2D 配列
int[ ] x = { { 1, 2 ,3}, { 3, 4, 5 } };
// 1 行目の最初の要素
x[0, 0]; // 1
// 2 行目の 3 番目の要素
x[1, 2]; // 5
// 1 行目の 3 番目の要素
x[0, 2]; // 3
C# 多次元配列:2次元配列をコード例で徹底解説

例:C# 2D 配列

using System;
namespace MultiDArray {
    class Program {
        static void Main(string[] args) {
            // 2D 配列を初期化
            int[ ] numbers = {{2, 3}, {4, 5}};
            // 1 行目の最初の要素にアクセス
            Console.WriteLine("Element at index [0, 0] : "+numbers[0, 0]);
            // 2 行目の最初の要素にアクセス
            Console.WriteLine("Element at index [1, 0] : "+numbers[1, 0]);
        }
    }
}

出力

Element at index [0, 0] : 2
Element at index [1, 0] : 4

この例では numbers は行 {2, 3} と {4, 5} を持ちます。示されたインデックスを使って値を出力します。


要素の変更

インデックスに新しい値を代入して配列を変更します:

using System;
namespace MultiDArray {
    class Program {
        static void Main(string[] args) {
            int[ ] numbers = {{2, 3}, {4, 5}};
            // 古い要素
            Console.WriteLine("Old element at index [0, 0] : "+numbers[0, 0]);
            // 新しい値を代入
            numbers[0, 0] = 222;
            // 新しい要素
            Console.WriteLine("New element at index [0, 0] : "+numbers[0, 0]);
        }
    }
}

出力

Old element at index [0, 0] : 2
New element at index [0, 0] : 222

ここでは [0, 0] の値が 2 から 222 に変更されます。


ネストしたループでの反復処理

using System;
namespace MultiDArray {
    class Program {
        static void Main(string[] args) {
            int[ ] numbers = { {2, 3, 9}, {4, 5, 9} };
            for(int i = 0; i < numbers.GetLength(0); i++) {
                Console.Write("Row "+ i+": ");
                for(int j = 0; j < numbers.GetLength(1); j++) {
                    Console.Write(numbers[i, j]+" ");
                }
                Console.WriteLine();
            }
        }
    }
}

出力

Row 0: 2 3 9
Row 1: 4 5 9

外側のループは行 (GetLength(0)) を、内側のループは列 (GetLength(1)) を反復します。

注意: 3 次元配列は複数の 2D 配列を含みます:

int[ , ] numbers = { { { 1, 3, 5 }, { 2, 4, 6 } }, { { 2, 4, 9 }, { 5, 7, 11 } } };

ここでは [ , ] (2 つのカンマ) が 3D 配列を示します。

C言語

  1. 20℃における比抵抗係数 — 材料総合リファレンス
  2. セラミックヒーター(セラミック発熱体)完全解説:金属線ヒーター比較での優位性(均一加熱・低温・長寿命・低コスト)
  3. C# 配列をマスターする:宣言、初期化、操作
  4. C# ジャグ配列をマスターする:宣言、初期化、アクセス
  5. C++配列を関数に渡す完全ガイド:1次元・多次元配列の実例付き
  6. C++配列を徹底解説:宣言、初期化、ポインタ活用テクニック
  7. C++動的配列の確保をマスター:コード例付き実践ガイド
  8. C#コレクション実践チュートリアル:実例で学ぶ柔軟なデータ管理
  9. MATLAB:多次元配列と特殊配列をマスターする
  10. Java配列コピー技法:包括的ガイド
  11. Java NavigableSetインターフェースをマスター:ナビゲーション、ソート、実践例