在C中,有可变参数一说,最常用的printf就是一个例子,事实上,在java中,确切地说,应该是在1.5版本之后,也提供了可变参数,下面,就是一个简单的例子。
1. 代码:
public class test9 {
// 主函数
public static void main(String args[]) {
test9 t = new test9();
t.testFun();
System.out.println("==============");
t.testFun2();
}
// 自定义类型测试
class sub {
int i;
sub( int ii) {
i = ii;
}
}
public void testFun() {
sub s1 = new sub(3);
sub s2 = new sub(5);
print(s1,s2);
}
// 可变参函数
public void print(sub... s) {
int i = 0;
for (sub s1: s) {
i ++;
System.out.println(s1.i);
}
}
// 基本类型测试
public void testFun2() {
int i = 100;
int j = 200;
print2(i,j);
}
// 可变参函数
public void print2(int... x) {
for (int i: x) {
System.out.println(i);
}
}
}
2. 运行结果:
3
5
==============
100
200
3. 总结:无论基本类型,还是自定义类类型,都可以作为函数的可变参数。