概念:数组
jdk5.0出现的新特性。将同一个类中,多个方法名相同、参数类型相同、返回类型相同,仅仅是参数个数不一样的方法抽取成一个方法,这种方法称为可变参数的方法spa
好处:
code
提升代码的重用性和维护性blog
语法:
class
修饰符 返回类型 方法名(参数类型... 参数名){
... ...
}jdk
注意:使用时,将可变长度的参数当作数组使用,等价于:sed
修饰符 返回类型 方法名(参数类型[] 参数名){
... ...
}语法
(因此可变参数不可重载成一维数组)方法
例:margin
public class VarargsDemo { 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); } }
使用特色:
一、可变参数的实参能够为0个或任意多个,当为0个参数时传入长度为0的数组:double[0]
二、可变参数的实参能够为一维数组类型 三、可变参数和普通类型参数 一块儿使用时,只能放在最后 四、一个参数列表中至多有一个可变参数!