可变形参(varargs).
JDK1.5
编译器认为:String[] arr == String ... arr
String[]
做形参只能传入 数组String...
做形参可以传入数组,无参,有个数变化的参数,但是只能有一个,且在参数列表的末尾- 参数传递很多时或者个数不固定,但参数类型一致时,可以使用可变参数
- 提倡尽量不用可变参数编程
public static void main(String[] args) {
String[] strs = {"测试","可变形参"};
printArg();//可以不传参 strs.length = 0
printArg(strs);//可以传数组
printArg("String ... ","测试","可变形参");//可传多个参数
printArg(null);// strs = null
}
public static void printArg(String...strs) {
if(strs != null && strs.length != 0) {
System.out.println(Arrays.toString(strs));
System.out.println("有传入参数\n");
}else {
System.out.println("没有传入参数\n");
}
}
/*
没有传入参数
[测试, 可变形参]
有传入参数
[String ... , 测试, 可变形参]
有传入参数
没有传入参数
*/