• ベストアンサー

Java引数の...パラメータについて。

知らないうちに、Javaの引数が変わっていました。。。 例えば、public void AAA(String... params) { } こんな感じで、String... な引数を表現できるんですね。。 そして、この意味って何でしょうか?? paramsは、任意の数の配列を持ちますよーって意味???っぽそうなんだけど。。。

質問者が選んだベストアンサー

  • ベストアンサー
  • root139
  • ベストアンサー率60% (488/809)
回答No.1

おっしゃる通り、可変長引数です。J2SE 5.0 (2004年)から導入されました。 ご質問の例では、params は String の配列として使えます。 呼出す側では任意の数の String を渡すことが出来ます。 例) -------------------------- AAA(); // 引数無しでもOK AAA("a", "b", "c"); // String であれば何個でもOK ----------------------------- http://www.javainthebox.net/laboratory/J2SE1.5/LangSpec/Varargs/Varargs.html http://www.ne.jp/asahi/hishidama/home/tech/java/varargs.html

yamachan_tomo
質問者

お礼

ご回答ありがとうございます。 知らなかったです。。。暫くJavaから離れていたので。。。

その他の回答 (1)

回答No.2

補足すると、可変長配列は最後の引数だけに使用できます。 なぜなら、引数なしでもOKなので、どこまでが可変長引数なのかがわからなくなってしまうからです。 OK: void sampleMethod(int param, String... params) NG: void sampleMethod(String... params, int param)

yamachan_tomo
質問者

お礼

ご回答ありがとうございます。 なるほど、、、、。 わかりやすいご説明です。

関連するQ&A