- 在不确定某一数据类型的传参数目时,我们可以定义该数据类型形参为可变参数。
- 声明方式,在指定参数数据类型后加省略号(...)如:public void printMax(double x,int... numbers)
- 可变参数相当于一个数组,在传参时我们传进去的是数组的元素。
- 在方法内部,可变参数被当作数组进行处理。
以下面这段代码为例
public class DemoCanshu {
//可变参数
public static void main(String[] args) {
printMax(1,2,3,4,5,6,7,8,9);
}
//声明方法时在指定参数类型后加一个省略号...表示其为可变参数
public static void printMax(int... numbers){
//将numbers当作数组进行使用
if(numbers.length==0){
System.out.println("没有值");
return;
}
int number = 0;
for (int i = 0; i < numbers.length; i++) {
if(number < numbers[i]) {
number = numbers[i];
}
}
System.out.println("最大的数是:"+number);
}
}
注意
- 在传递多个不同形式参数时,可变参数必须在最后一个进行声明。
- 对可变参数传参,所有传参元素数据类型必须相同。