jdk5新特性:可变参数
可变参数:本质就是动态 创建的数组
修饰符 返回值类型 方法名(数据类型… 变量名){ // 可变参数,形参列表可以接受0~n个值
方法体
}
例子:
public static int getSum(int… arr){
}
注意:(没有为什么,java语法规范)
①一个方法 有且只能有一个可变参数;
②一个方法 可以有可变参数和普通参数,但是可变参数必须放到参数列表末尾;
③可变参数,形参列表可以接受0~n个值
④可变参数本质就是一个数组,arr就是一个数组的引用地址(反编译工具查看源代码)
demo:
public class VariableParameters {
public static void main(String[] args) {
sum("求和", 1, 2, 3, 4);
}
static void sum(String name, int... arr) {
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum += arr[i];
}
System.out.println(name + "sum=" + sum);
}
}
运行结果
看一下源码发现:可变参数本质就是一个数组,arr就是一个数组的引用地址(反编译工具查看源代码)