可变参数的最大作用是可以让我们灵活 的决定方法的参数个数
实例:写一个方法实现任意多个整数的求和
传统的方法是使用数组包装数据
public class Demo{
public static void main(String[] args) {
int data[] = new int[] {1, 3, 5, 2, 6};
System.out.println(sum(data));
}
public static int sum(int[] data) {
int sum = 0;
for (int i = 0; i < data.length; i++) {
sum += data[i];
}
return sum;
}
}
这里的代码虽然可以实现我们的需求,但是并没有完全符合要求,这里sum方法只接收了一个参数,并不是我们需要的可以任意个参数
采用可变参数
定义格式:方法名(数据类型 … 参数名)
public class Demo{
public static void main(String[] args) {
int data[] = new int[] {1, 3, 5, 2, 6};
System.out.println(sum(data));
System.out.println(sum(1, 3, 5, 2, 6));
}
public static int sum(int ... data) {
int sum = 0;
for (int i = 0; i < data.length; i++) {
sum += data[i];
}
return sum;
}
}
观察上面的程序可以发现可变参数的本质其实还是数组,只不过在传参的时候将数组元素挨个传入方法中了。