jdk1.5之后出现的新特性。
使用前提:
当方法的参数列表类型已经确定,但是参数个数不确定,就可以使用可变参数。
使用格式:
修饰符 返回值类型 方法名(数据类型…变量名){}
可变参数原理:
可变参数底层是一个数组,根据传递参数个数不同,会创建不同长度的数组来存储这些参数。传递参数的个数可以是0个(不传递),1,2…n个。
public class DemoArgs {
public static void main(String[] args) {
System.out.println(add()); //0 | 数组长度:0
int re1 = add(1, 2);
System.out.println(re1); //3 | 数组长度:2
int re2 = add(1, 2, 3, 4, 5); //15 | 数组长度:5
System.out.println(re2);
}
private static int add(int...arr){
int sum = 0;
for (int num : arr) {
sum += num;
}
System.out.println("数组长度:" + arr.length);
return sum;
}
}