int…params:可变参数,在JDK1.5之后新出的。增强for循环也是1.5出的
作用:它可以帮助我们解决方法名相同,形参列表不同的重载问题。
表面上我们在使用可变参数,但是实际上,内部当作数组来处理,如下
public class Test1 {
public static void main(String[] args) {
add();
add(10);
add(10, 20);
add(10, 20, 30);
add(10, 20, 30, 40);
add(new int[]{12, 34, 45, 6});
}
public static void add(int... params) {
System.out.println("------");
}
}
编译成class字节码文件如下
当可变参数和其他类型一起作为形参的时候,可变参数必须放到最后。
public static void add(int num,int... params) {
System.out.println("------");
}