java可变参数的表述形式在数据类型后面用三个点表示:
static void func(int... args){
for (int i: args
) {
System.out.println(i);
}
}
A.func(1,2,3);
A.func(5,6);
输出:
1,2,3
5,6
可变参数的有以下几个特点:
1.int… args的最终编译结果形式应该为:int[] args数组形式
2.接受这个参数的方法是最后调用的,如果有相同参数长度的方法的话(能匹配定长的方法,那么优先匹配该方法。含有不定参数的那个重载方法是最后被选中的)
A.func("a",2);
static void func(String string,int... args){
for (int i: args
) {
System.out.println(i);
}
}
static void func(String string,int b){
System.out.println("execute");
}
输出结果: execute
3.int… args这个参数只能在参数列表的最后一个,不然会报错
error:Vararg parameter must be the last in the list
static void func(int... args,String string){
for (int i: args
) {
System.out.println(i);
}
}
下面这种放在最后面是可以的
static void func(String string,int... args){
for (int i: args
) {
System.out.println(i);
}
}