可以把类型相同但个数可变的参数传递给方法,方法中的参数声明如下:
typeName...parameterName (类型名...参数名)
在方法声明中,指定类型后紧跟着省略号...,只能给方法指定一个可变长参数。
Java将可变长参数当成数组对待。可以将一个数组或可变的参数个数传递给可变长参数。当用可变的参数个数调用方法时,Java会创建一个数组并把参数传给它。
package fiveChapter; public class VarArgsDemo { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
printMax(34,3,3,2,26.5,122);
printMax(new double[]{1,2,3,4});
} public static void printMax(double... numbers){
if(numbers.length==0){
System.out.println("No argument passed");
return;
}
double result=numbers[0];
for(int i=1;i<numbers.length;i++)
if(numbers[i]>result)
result=numbers[i];
System.out.println("The max value is "+result);
} }