jdk1.5后更新的可变参数
在JDK1.5之后,如果我们定义一个方法需要接受多个参数,并且多个参数类型一致,我们可以对其简化成如下格
式:
修饰符 返回值类型 方法名(参数类型… 形参名){ }
其实这个书写完全等价与
修饰符 返回值类型 方法名(参数类型[] 形参名){ }
只是后面这种定义,在调用时必须传递数组,而前者可以直接传递数据即可。
JDK1.5以后。出现了简化操作。… 用在参数上,称之为可变参数。
比如一个需求需要求多个数的求和,我们不确定求和的个数是多少个,但是确定数据类型,则可以使用可变参数,如下例子:
//实现多个数相加求和
public class dynamicParameter {
public static void main(String[] args) {
int sum=add2(10,20,30,40,50);
System.out.println(sum);
}
//若只求两个数求和则可以使用两个形参的参数传递实现
public static int add(int a,int b){
return a+b;
}
//但是若是求和的个数不确定,而数据类型确定时,则可以使用可变参数
public static int add2(int...arr){
int sum=0;
//使用增强for循环遍历数组求和
for (int i : arr) {
sum+=i;
}
return sum;
}
}
可变参数注意:
1.一个方法的参数列表,只能有一个可变参数
2.如果方法的参数有多个,那么可变参数必须要写在参数列表的末尾!