可变参数列表主要是指参数数量的可变,可以使一个到多个
package www.zxx;
import java.util.Scanner;
public class test {
public static void main(String[] args) {
test t1 = new test();
t1.sum(1);
t1.sum(1,2);
t1.sum(1,2,3);
System.out.println(t1.find(1,1,2,3));
System.out.println(t1.find(1,2,3));
}
public boolean find(int a , int...m) {
boolean flag = false;
for( int i : m) {
if(i == a) {
flag = true;
}
}
return flag;
}
public void sum(int... n) {
int sum = 0;
for(int i:n) {
sum += i;
}
System.out.println("sum = "+sum);
}
}
运行结果:
这里就写了一个int类型的例子,主要在于可变参数的操作,用一个for循环,定义了一个i,每次都从n取一个数传给i,直到取完所有的n
这里值得注意的地方是带可变参数列表的函数是最后调用的!也就是说在函数名和函数类型一致时,传入参数的数目和不带可变参数列表函数的数目、类型一致时优先调用不带可变参数列表的函数
啊还是我看到新方法有点激动了- -实际上再写一个public boolean find(int a,int[] m)会显示是重复定义函数了- -证明这两个是等价的,实际上能解决的问题是一样的!而且数组还能在调用函数之前给定数组的成员- -要是太多了的话显得这个函数不是那么方便了