tips:可变参数列表!
先来看看以往我们要传递许多参数时是怎么做的:
java:
public static void main(String []args){}
c:
int main(int argc, char** argv){}
其实,我们还有其它方式来传递多个参数,尤其是在参数个数不确定的时候;这种方式是在java se5中产生的,这就是可变参数列表!
先来看看可变参数列表是什么样的:
public void test(Object... args){}这就是可变参数列表Object... args,你传多少个Objec参数,就是多少个!
值得注意的是,在参数列表中,如果某个是可变的参数,那么这个参数就必须放在最后一个参数,否则,程序怎能判断你不是在继续输入可变参数,而是调到下一个参数了呢?
举个例子看一下:
假设我们有个函数有2个参数;第一种是把可变参数放在后面,第二种是把可变参数放在前面;
第一种:
public void test(int param1,int... args){}
第二种:
public void test(int... args,int param2){}
现在我们输入参数:1,2,3,4,5;
对于第一种,1赋给了param1,2,3,4,5给了args;对于第二种,则会产生错误,因为程序不知道5是要赋给param2的,还以为args没完呢,哈哈QAQ;
所以说,第二种情况是不对的,第一种是正确的。
可变参数列表可能我们并不常用,但在许多用的到的地方还是很方便的,也是很实用的。