1.可变参数列表与自动打包机制
  在Java中,可变参数列表不依赖于自动打包机制,现简单验证如下:/**
 * 证明:可变参数列表不依赖于自动打包机制
 */
public class ParamAvalible {
static void f(int ...args) {
System.out.println(args.getClass());
}

public static void main(String[] args) {
f(2);
f();
System.out.println(new int[0].getClass());
System.out.println(new Integer[0].getClass());
}
}
运行结果:
class [I
class [I
class [I
class [Ljava.lang.Integer;
2. 可变参数列表于重载
重载方法是应该保证只有方法中的一个使用可变参数列表,否则在在参数个数为零时,无法调用,示例如下:/**
 * 可变参数列表与重载
 */
public class ParamAvalible2 {
static void f(String...args) {
System.out.println("f(String...args)");
}

static void f(int...args) {
System.out.println("f(int...args)");
}

public static void main(String[] args) {
f("sdds");
f(1);
//f();//编译错误,编译器无法识别是调用哪个方法
}}