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

C#で配列を初期化する3つの構文パターンまとめ

C#では、配列を初期化する方法が複数用意されています。ここでは、代表的な3つの記述方法を具体例とともに解説します。

方法1:配列のサイズを明示的に指定する

new演算子を使い、要素数を指定してから初期化子リストを渡す方法です。指定したサイズと要素数が一致している必要があります。

int[] marks = new int[5] { 99, 98, 92, 97, 95 };

方法2:サイズ指定を省略する

初期化子リストから要素数が自動的に推論されるため、サイズの記述を省略できます。コードがすっきりし、後から要素を追加しても修正不要になるのがメリットです。

int[] marks = new int[] { 99, 98, 92, 97, 95 };

方法3:宣言と同時に初期化する

宣言時に直接初期化子リストを記述すると、new演算子自体も省略できます。これはC#コンパイラが自動的にnewを補完する糖衣構文(シンタックスシュガー)であり、最も簡潔な書き方です。

int[] marks = { 99, 98, 92, 97, 95 };

実際のコード例

次に、配列を宣言した後にループ処理で各要素を初期化し、その値を出力する実践的な例を見てみましょう。この方法は、初期化時点では値が確定しておらず、計算結果などを後から格納したい場合に便利です。

using System;

namespace Demo {
    class MyArray {
        static void Main(string[] args) {
            int[] n = new int[10]; /* n は10個の整数を格納する配列 */
            int i, j;

            /* 配列 n の各要素を初期化 */
            for (i = 0; i < 10; i++) {
                n[i] = i + 100;
            }

            /* 各配列要素の値を出力 */
            for (j = 0; j < 10; j++) {
                Console.WriteLine("Element[{0}] = {1}", j, n[j]);
            }

            Console.ReadKey();
        }
    }
}

出力結果

上記のプログラムを実行すると、インデックスに100を加算した値が順番に出力されます。

Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109

まとめ

C#における配列の初期化には、「サイズ指定あり」「サイズ省略」「宣言と同時」の3つのパターンがあります。可読性や保守性を考えると、サイズが自明な場合は宣言と同時に初期化する方法がおすすめです。一方、要素数を実行時に決めたい場合はnew int[サイズ]のように先に領域を確保してから、ループなどで値を代入するとよいでしょう。

  1. C#のクラスにおけるメンバー変数とは?意味と使い方を徹底解説

    C#におけるクラスとメンバー変数の基本C#において、クラスはメンバー変数(フィールド)とメソッド(関数)を含む「設計図」であり、そこから生成されるオブジェクトの状態や振る舞いを定義するものです。まずはクラスの基本構文を確認し、メンバー変数がどのように宣言されるのかを見ていきましょう。クラスの基本構文<アクセス修飾子> class クラス名 {    // メンバー変数    <アクセス修飾子> <データ型> 変数1;    <アクセス

  2. C#のカスタム例外とは?ユーザー定義例外の作成方法を実例で解説

    他のプログラミング言語と同様に、C#でも独自の例外クラス(ユーザー定義例外)を簡単に作成できます。ユーザー定義例外クラスは、標準ライブラリの Exception クラスを継承して定義します。このように開発者が独自に定義した例外のことをカスタム例外と呼びます。カスタム例外が必要な理由.NETには数多くの組み込み例外(NullReferenceException や ArgumentException など)が用意されていますが、アプリケーション固有のエラー状態を表現したい場合には、カスタム例外を作成するのが適切です。たとえば「温度がゼロであること」をエラーとして扱いたい場合など、ビジネスロジック