自JAVA1.5以来,在JAVA中出现了可变参数一说,其针对的情况是对多个不确定的相同类型的元素进行同一类操作的情形。
可变参数有点类似与重载的概念,但是其中的可变参数是被隐式的转换成数组来进行处理的。
例如:对多个数进行求和,但是不知道具体有多少个这样的数。
使用条件:
- 可变参数必须是函数的最后一个变量,即在参数列表的最后
- 可变参数用 … 表示
- 调用可变参数的方法时,编译器会为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数
/** * 多个参数求和
* @author Administrator
*
*/
public class VariableParameter {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("add(1,2,3) = " + add(1,2,3));
System.out.println("add(1,2,4,5,6,7,8) = " + add(1,2,4,5,6,7,8));
}
/**
* 多个数求和
* @param first 第一个加数
* @param others 其余的加数
* @return 加数求和的结果
*/
public static int add(int first,int ... others) {
int sum = first;
for (int i = 0; i < others.length; i++) {
sum += others[i];
}
return sum;
}
}