可变参数:将同一类中多个同名同功能但参数个数不同的方法,封装成一个方法
形式:访问修饰符 返回值类型 方法名(数据类型...形参名)
public int sum(int n1,int n2){
return n1+n2;
}
public int sum(int n1,int n2,int n3){
return n1+n2+n3;
}
上面两个方法名称相同,功能相同,参数个数不同,可以用可变参数优化
public int sum(int ...sums){
System.out.println("接收的参数个数="+nums.length);
int s=0;
for(int i=0;i<nums.length;i++){
s+=nums[i];}
return s;
}
1.int...表示接收的是可变参数,类型是int,即可接收多个int
2.使用可变参数式,可以当作数组来用,即nums可以当作数组
注意事项:
(1)可变参数的实参可以是0或任意多个
(2)可变参数的本质上是数组
(3)可变参数可以和普通类型的参数一起放在形参列表,但必须保证可变参数在最后
(4)一个形参列表只能出现一个可变参数
例题:有三个人,分别分别返回姓名和两门课总分,返回姓名和三门课总分,返回姓名和五门课总分。