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

C#のparamsキーワードで可変長引数(パラメーター配列)を使う方法

メソッドを宣言する際、引数として渡される値の数が事前にわからないことがあります。そんなときに役立つのが、C#のparamsキーワードによるパラメーター配列です。paramsを使えば、呼び出し側で渡す引数の個数を自由に変えられるため、柔軟なメソッド設計が可能になります。

paramsの基本的な宣言方法

パラメーター配列は、以下のようにメソッドの引数にparamsキーワードを付けて宣言します。

public int AddElements(params int[] arr) {
}

C#でのparams実装例

次のサンプルコードでは、params int[]を受け取るメソッドを定義し、渡されたすべての整数の合計を計算しています。

using System;

namespace Program {
    class ParamArray {
        public int AddElements(params int[] arr) {
            int sum = 0;

            foreach (int i in arr) {
                sum += i;
            }
            return sum;
        }
    }
    class Demo {
        static void Main(string[] args) {
            ParamArray app = new ParamArray();
            int sum = app.AddElements(300, 250, 350, 600, 120);

            Console.WriteLine("The sum is: {0}", sum);
            Console.ReadKey();
        }
    }
}

実行結果

The sum is: 1620

この例では、AddElementsメソッドに5つの整数(300、250、350、600、120)を渡しています。メソッド内部ではこれらが1つのint[]配列として扱われ、foreachループで合計値1620が算出されます。

params使用時の注意点

  • 最後の引数であること: paramsパラメーターは、メソッドの引数リストの必ず末尾に配置する必要があります。
  • 1つのメソッドに1つだけ: 同じメソッド内で複数のparamsパラメーターを宣言することはできません。
  • 引数ゼロも可能: 呼び出し時に引数を1つも渡さなくてもエラーにはなりません。その場合、空の配列が渡されたものとして処理されます。
  • 型は1次元配列: paramsに指定できるのは1次元配列型のみです。

引数の個数が不定になる可能性があるメソッドを作成する場合、paramsを活用することで、呼び出し側のコードをシンプルかつ読みやすく保つことができます。

  1. C#のparamsキーワードで可変長引数(パラメーター配列)を使う方法

    メソッドを宣言する際、引数として渡される値の数が事前にわからないことがあります。そんなときに役立つのが、C#のparamsキーワードによるパラメーター配列です。paramsを使えば、呼び出し側で渡す引数の個数を自由に変えられるため、柔軟なメソッド設計が可能になります。paramsの基本的な宣言方法パラメーター配列は、以下のようにメソッドの引数にparamsキーワードを付けて宣言します。public int AddElements(params int[] arr) { }C#でのparams実装例次のサンプルコードでは、params int[]を受け取るメソッドを定義し、渡されたすべての整数の

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

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