什么叫做可变长参数:可变长参数就是我们给一个函数传参的时候,我们不确定具体传参的个数,就可以使用可变长参数,其本质就是一个数组
package test1;
import java.util.LinkedList;
public class testTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=0;i<args.length;i++) {
System.out.print(i);
}
multiplyArguments(1,2,3,4,5,6,7,8,9);
}
//传入的是不确定个数的int型参数
//注意可变长参数的赋值顺序是按照从左到右一次进行的
public static void multiplyArguments(int a, int b, int ... nums) {
System.out.println("a="+a);
System.out.println("b="+b);
for(int i=0;i<nums.length;i++) {
System.out.print(nums[i]+" ");
}
System.out.println();
}
}
可变长参数之间重载的问题
package test1;
import java.util.LinkedList;
public class testTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=0;i<args.length;i++) {
System.out.print(i);
}
//multiplyArguments(1,2,3,4,5,6,7,8,9);//走的是参数为int的函数
multiplyArguments(1.0,2,3,4,5,6,7,8,9);//走的是参数为double的函数
}
//传入的是不确定个数的int型参数
//注意可变长参数的赋值顺序是按照从左到右一次进行的
public static void multiplyArguments(double a, int b, int ... nums) {
System.out.println("a="+a);
System.out.println("b="+b);
for(int i=0;i<nums.length;i++) {
System.out.print(nums[i]+" ");
}
System.out.println();
}
public static void multiplyArguments(int a, int b, int ... nums) {
System.out.println("a="+a);
System.out.println("b="+b);
for(int i=0;i<nums.length;i++) {
System.out.print(nums[i]+" ");
}
System.out.println();
}
}