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 矢木浩人