Java2 SDK 1.5 (Tiger) [Varargs]

001164.jpg

可変引数を持つメソッドの宣言ができるようになった。

… という表記を用いればいい。

System.out.printfメソッドなどでも使われる表記なので覚えておいた方がいいだろう。

簡単な実装例を示す。

public class VarargsTest {
public void varargsMethod(Object … args) {
int i = 0;
for (Object item : args) {
System.out.printf(“args[%d]:%s\n”, i, item.toString());
i++;
}
}
public static void main(String[] args) {
VarargsTest v = new VarargsTest();
System.out.println(“v.varargsMethod() —-“);
v.varargsMethod();
System.out.println(“v.varargsMethod(“0”) —-“);
v.varargsMethod(“0”);
System.out.println(“v.varargsMethod(“0”, “1”) —-“);
v.varargsMethod(“0”, “1”);
System.out.println(“v.varargsMethod(“0”, “1”, “2”) —-“);
v.varargsMethod(“0”, “1”, “2”);
}
}

実行結果は次の通り。

$ javac -source 1.5 VarargsTest.java
$ java VarargsTest
v.varargsMethod() —-
v.varargsMethod(“0”) —-
args[0]:0
v.varargsMethod(“0”, “1”) —-
args[0]:0
args[1]:1
v.varargsMethod(“0”, “1”, “2”) —-
args[0]:0
args[1]:1
args[2]:2
同じカテゴリの記事: Java