可变参数



Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
//数组下标越界

- JDK 1.5开始,Java支持传递同类型的可变参数给一个方法。
- 在方法声明中,在指定参数类型后加一个省略号(..)。
- 一个方法中只能指定-个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。
package com.yue.method;
public class Demo04 {
public static void main(String[] args) {
//调用可变参数的方法
printMax(34, 3, 3, 2, 56, 5);
printMax(new double[]{1, 2, 3});
}
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);
}
}