1. ホーム
  2. c#

[解決済み】なぜparamsキーワードを使用するのですか?

2022-03-25 19:07:08

質問

基本的な質問だと思いますが、答えが見つかりませんでした。

なぜそれを使うかというと、それを使っている関数やメソッドを書いた場合、それを削除しても、コードは完全に、100%、それを使わない場合と同じように動作するからです。例えば

paramsを使用した場合。

static public int addTwoEach(params int[] args)
{
    int sum = 0;
    foreach (var item in args)
        sum += item + 2;
    return sum;
}

paramsを使用しない場合。

static public int addTwoEach(int[] args)
{
    int sum = 0;
    foreach (var item in args)
       sum += item + 2;
    return sum;
}

解決方法は?

params のように、メソッドを呼び出すことができます。

addTwoEach(1, 2, 3, 4, 5);

なし params は、できません。

さらに、配列をパラメータとしてこのメソッドを呼び出すことができます。 いずれの場合も :

addTwoEach(new int[] { 1, 2, 3, 4, 5 });

ということです。 params を使用すると、メソッドを呼び出す際にショートカットを使用することができます。

関係ありませんが、メソッドを大幅に短縮することができます。

public static int addTwoEach(params int[] args)
{
    return args.Sum() + 2 * args.Length;
}