SJC-P 可変長引数
ナビゲーションに移動
検索に移動
SJC-P 可変長引数
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/language/varargs.html
書式
- 宣言
- 3 つのピリオドを最後の引数の型の後に続ける(1)
- 最後のパラメータとしてのみ利用可能(2)
- 他のパラメータと併用できる(3)
- 配列、または一連の引数として渡される(4)
package vararg;
public class VarArgTest1 {
public static void main(String[] args) {
VarArgTest1 me = new VarArgTest1();
me.intVarArg("numbers are", 1,3,5,7,9);
}
// 3 つのピリオドを最後の引数の型の後に続ける(1)
// 最後のパラメータとしてのみ利用可能(2)
// 他のパラメータと併用できる(3)
public void intVarArg(/*double... d,*/ String msg, int... args) {
// 配列、または一連の引数として渡される(4)
if (args instanceof int[]) {
System.out.println("int... args is int array.");
}
System.out.println(msg);
for(int i : args) {
System.out.println(i);
}
}
}
利用法、注意点
- コア API で使用する重要な場合としては、リフレクト、メッセージ書式指定、新しい printf 機能などがある
- 一般的に、可変引数を使用するメソッドはオーバーロードしないようにする。オーバーロードすると、どのオーバーロードが呼び出されたのかわかりにくくなる。
{{include_html banner_html, "!SJC-P"}}
© 2006 矢木浩人