一、定义:如果在定义方法时,最后一个形参的类型后增加三点(...),则表明该形参可以接受多个参数值,多个参数值当作数组传入。
public class Varargs
{
public static void test(int a, String ... books)
{
for(String tmp:books)
{
System.out.println(a);
}
System.out.println(a);
}
pulic static void main(String[] args)
{
test(5,"你好","java",“谢谢”);
}
}
需要说明的是:个数可变的形参只能放在参数列表的最后一个,并且只能包含一个。
在重载函数中要注意如何区分使用一个参数的方法和可变参数个数的方法。
public class Overload {
public void test(String msg){
System.out.println("只有一个字符串的test方法"+msg);
}
public void test(String ...books){
System.out.println("参数个数可变的test方法");
}
public static void main(String[] args) {
Overload olv= new Overload();
olv.test();//第二个test
olv.test("aa","bb");//第二个test
olv.test("aa");//第一个test
olv.test(new String[]{"aa"});//第二个test
}
}