public class OverloadVarargs
{
public void test(String msg)
{
System.out.println("只有一个字符参数的test方法");
}
public void test(String...books)
{
System.out.println("形参长度可变的test方法");
}
public static void main(String[] args)
{
OverloadVarargs olv=new OverloadVarargs();
//调用形参长度可变的test
olv.test();
//调用形参长度可变的test
olv.test("aa","bb");
//这种调用方式两种方法都适用,
//但是系统会调用只有一个参数的test方法
olv.test("aa");
//这种调用方式,会调用形参长度可变的test
olv.test(new String[]{"aa"});
}
}
如果要调用test(String... books)方法,又只想传入一个字符串参数,则可采用传入字符串数组的形式,如:
olv.test(new String[]{"aa"});
大部分时候并不推荐重载形参长度可变的方法,
因为这样做没有太大意义,并且降低了程序的可读性