例如现在要求我们设计一个求任意个数(整数)的和,我们可以这样来写
----------------------------------------
package day1;
public class Test {
public static void main(String[] args) {
System.out.println(add(new int[] {1,2,3,4}));
}
public static int add(int[] date){
int x = 0;
for(int i=0;i<date.length;i++){
x +=date[i];
}
return x;
}
}
--------------------------------------------
这种是最初实现,有一定缺陷,例如说,我现在想写一个任意参数的求和,而不是数字
System.out.println(add(1,2,3));这时上面的代码将报错,这时可以使用可变参数
语法:Public [static] [final] 返回值 方法名称(参数类型 … 参数名称){}//[]代表可选
例如:
---------------------------------------------------------
package day1;
public class Test {
public static void main(String[] args) {
System.out.println(add(1,4));//随意传递的值
System.out.println(add(new int[] {1,2,3,4}));
}
public static int add(int ... date){//本身还是一个数组
int x = 0;
for(int i=0;i<date.length;i++){
x +=date[i];
}
return x;
}
}
------------------------------------------------------------------
使用原则:参数个数不却定,随意由用户传递
注意:如果要传递多类参数,可变参数要写到最后例如
public static int add(String arg,int ... date){}