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を活用することで、呼び出し側のコードをシンプルかつ読みやすく保つことができます。
-
C#のparamsキーワードで可変長引数(パラメーター配列)を使う方法
メソッドを宣言する際、引数として渡される値の数が事前にわからないことがあります。そんなときに役立つのが、C#のparamsキーワードによるパラメーター配列です。paramsを使えば、呼び出し側で渡す引数の個数を自由に変えられるため、柔軟なメソッド設計が可能になります。paramsの基本的な宣言方法パラメーター配列は、以下のようにメソッドの引数にparamsキーワードを付けて宣言します。public int AddElements(params int[] arr) { }C#でのparams実装例次のサンプルコードでは、params int[]を受け取るメソッドを定義し、渡されたすべての整数の
-
C#で多次元配列を定義する方法|宣言・初期化・出力の手順を解説
C#では、複数の次元を持つ「多次元配列」を扱うことができます。この記事では、2次元配列の宣言方法から初期化、forループを使った要素の出力まで、具体的なコード例とともにわかりやすく解説します。2次元配列の宣言文字列型の2次元配列は、次のようにカンマを使って宣言します。string[] names;2次元配列は、行と列を持つ「表(テーブル)」のようなイメージで考えると理解しやすいでしょう。x行・y列のデータをまとめて管理したい場合に便利です。多次元配列の初期化多次元配列は、各行の初期値を波括弧 { } で囲んで指定することで初期化できます。以下は、4行×4列のint型2次元配列を初期化する例です