可变参数
介绍
当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数。
使用格式
修饰符 返回值类型 方法名 (数据类型 … 变量名) {}
可变参数的原理
可变参数的底层原理就是数组,根据传递参数个数不同,会创建不同长度的数组,来存储参数,可以是0个也可以是多个
实例代码:
public class CanShuClass {
//定义一个方法求n个参数的和
public static int add(int...arr) {
//可变参数的底层原理就是一个 数组
System.out.println(arr.length);
int sum=0; //用来存储求和结果
//用增强for循环遍历数组求和
for(int i:arr) {
sum+=i;
}
return sum;
}
public static void main(String[] args) {
int i = add(10+20+30+40+50+60+70+80+90+100);
System.out.println(i);
}
}
输出结果:
注意事项
- 一个方法只能有一个可变参数列表
public static void add(int...arr, double...arr2) {
}
这样的写法是错误的,不能有两个可变参数
- 如果方法的参数有多个,那么要把可变参数放在参数列表的最后面
示例代码:
public static void add(int a,int b,int c,double...arr2) {
}
特殊写法
public static void method(Object obj) {
}
Object可以传递任意类型数据