Java の... パラメータ

Rupam Yadav 2023年10月12日
  1. Varargs を使用して Java のメソッドで可変数の引数を受け入れる
  2. Java で複数のタイプの引数を使用して Varargs を使用する
Java の... パラメータ

3つのドット ... 演算子は、一般に Varargs と呼ばれ、Variable-length Arguments の略です。可変数の引数の使用を容易にするために、Varargs が JDK5 で導入されました。これまでは、オーバーロードを使用するか、引数を配列に配置する必要がありましたが、これは効率的ではありませんでした。次の例では、Varargs を最大限に活用する方法を説明します。

Varargs を使用して Java のメソッドで可変数の引数を受け入れる

このプログラムでは、functionWithVarArgs() という静的メソッドを作成し、受信パラメーターのタイプを String に設定し、その後に 3つのドットとパラメーター名 str を設定します。これは、任意の数の String を渡すことができることを意味します。引数を入力します。

functionWithVarArgs() メソッド内に、すべての str 値を出力する拡張された for ループを作成します。main() 関数では、最初に functionWithVarArgs() 関数に 4つの引数を渡し、次に 3つの引数を使用して同じ関数を再度呼び出します。出力には、渡されたすべての引数が表示されます。

public class Main {
  public static void main(String[] args) {
    functionWithVarArgs("String 1", "String 2", "String 3", "String 4");
    functionWithVarArgs("String A", "String B", "String C");
  }

  static void functionWithVarArgs(String... str) {
    for (String s : str) {
      System.out.println(s);
    }
  }
}

出力:

String 1
String 2
String 3
String 4
String A
String B
String C

Java で複数のタイプの引数を使用して Varargs を使用する

Varargs を使用するために従わなければならないいくつかのルールがあります。最初のルールは、Varargs が最後の引数でなければならないということです。そうしないと、コンパイラーはエラーをスローします。2 番目のルールは、メソッドに複数の Varargs を含めることはできないということです。

次のコードでは、2つのタイプの引数を渡します。ここで、str はタイプ String であり、単一の引数にすぎません。メソッド functionWithVarArgs() の最後の引数は、タイプ int の Varargs です。ここで、main() で、最初の引数を単一の値として関数を呼び出します。2 番目の引数は、Vargargs であるため、可変長にすることができます。

public class Main {
  public static void main(String[] args) {
    functionWithVarArgs("String 1", 1, 2);
    functionWithVarArgs("String A", 10, 20, 30, 40);
  }

  static void functionWithVarArgs(String str, int... num) {
    for (int n : num) {
      System.out.println(n);
    }
  }
}

出力:

1
2
10
20
30
40
著者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn