のパラメーターが...
Javaでどのように機能するのか疑問に思っています。例えば:
public void method1(boolean... arguments)
{
//...
}
これはのようなものarray
ですか?パラメータにアクセスするにはどうすればよいですか?
のパラメーターが...
Javaでどのように機能するのか疑問に思っています。例えば:
public void method1(boolean... arguments)
{
//...
}
これはのようなものarray
ですか?パラメータにアクセスするにはどうすればよいですか?
変数引数または略してvar-argsと呼ばれ、Java 1.5 で導入されました。利点は、メソッドの呼び出し中に任意の数の引数を渡すことができることです。
例えば:
public void method1(boolean... arguments) throws Exception {
for(boolean b: arguments){ // iterate over the var-args to get the arguments.
System.out.println(b);
}
}
上記のメソッドは、以下のすべてのメソッド呼び出しを受け入れることができます。
method1(true);
method1(true, false);
method1(true, false, false);
他の回答によると、それは「varargs」パラメーターです。これは配列です。
多くの人が気付いていないのは、次の 2 つの重要な点です。
method1();
パラメーターを指定しないと null になると考える人が多いですが、null チェックは不要です。
次のように呼び出すことで、null を強制的に渡すことができます。
method1((boolean[])null);
しかし、誰かがこれを行う場合は、爆発させてください。