可变参数:适用于参数个数不确定,类型确定的情况。java把可变参数当做数组处理(在方法内部可以当做数组来使用,单调用该方法时,它是一个序列);
可变参数尽管定义为某一种类型的,而实际它的底层是object,可以接受任何的类型,因此可变性参数是最后一项。当可变参数多于一个时,必须有同一个不是最后一项,所以只支持有一个可变参数。
书写的格式:
int mulit(int x,int...args){方法体},(...)位于数据类型和变量名之间可以存在空格也可以没有。
调用可变参数的方法时候,编译器为该可变参数隐含创建一个数组,在方法体重一数组的方式访问可变参数。
下面让我们来看一下代码:
public class canshu {
public static void main(String[] args) {
mulit(1,2,3);//6
mulit();//1
mulit(1,2,3,4,5);//120
}
private static void mulit(int ...is ){//名字可以自己给
int sum=1;
for(int i:is){
sum*=i;
}
System.out.println(sum);
}
}