当你在做项目时,有一个计算传入参数的和,但参数多少不确定,面对这样的情况要如何解决呢?
可变参数的写法请参考下面的例子
package com.ycao.argsTest;
public class VarArgs {
public static void main(String[] args) {
System.out.println(sum(1, 2)); //二个参数
System.out.println(sum(1, 2, 3, 4)); //四个参数
System.out.println(sum(1, 2, 3, 4, 5, 6));//六个参数
System.out.println(sum(new int[]{1, 2, 3, 4, 5, 6}));//另外一种传参方式,说明这种传参方法本质就是数组
}
// 类型后面加三个点即:"..." ,说明这个方法的参数不固定,至于是多少个可以在调用时直接声明就可以。
public static int sum(int... nums) {
int sum = 0;
for (int num : nums) {
sum += num;
}
return sum;
}
}
注:
1. 这种可变参数的写法本质就是一种数组,对比上面的最后一种输出方法。
2. 方法最多只能接收一个可变参数
3. 当有另外一个或多个参数时,可变参数必须放在最后一个
public static int sum(String str, int age, int... nums){
//方法体 ...
}