可変長引数で、引数の数を1以上の任意の数にするには
0以上の任意の数の引数をとるメソッドは、以下のように定義できる
public String doSomething(String...strs){}
上記のメソッドの呼び出し方は以下の通り
doSomething(); doSomething("aaa"); doSomething("aaa", "bbb"); doSomething(new String[]{"aaa", "bbb"});
そこで疑問に思ったのだが、引数の数を1以上の任意の数とすることってできないのかな?
以下のように定義することもできるけど
public String doSomething(String str, String...strs) {}
そうすると上の例でいうところの4番目ができないんだよね。
こんな形で、オーバーロードするしかないのかな?
public String doSomething(String str, String...strs) {} public String doSomething(String[] strs) {}