1. 定义的格式
在类型和变量名之间加上 "..."
int sumUp(int ... args)
{
int s=0;
for(int i=0; i<args.length; i++){
s += args[i];
}return s;
}
2. 编译器会在背地里把这最后一个形参转化为一个数组形参,并在编译出的class文件里作上一个记号,表明这是个实参个数可变的方法。
int sumUp(int[] args)
{
int s=0;
for(int i=0; i<args.length; i++){
s += args[i];
}return s;
}
所以下面这种情况是会出错的
int sumUp(int ... args){}
int sumUp(int []args){}//Error
3. 可以传递0个参数。