不积跬步,无以至千里;不积小流,无以成江海。
Java语言基础
Java的可变参数方法
定义:jdk5.0出现的新特性。将同一个类中,多个方法名相同、参数类型相同、返回类型相同,仅仅是参数个数不同的方法抽取成一个方法,这种方法称为可变参数的方法。提高了代码的重用性和维护性。
修饰符 返回类型 方法名(参数类型... 参数名){ ... ... } 注意:使用时,将可变长度的参数当做数组使用,等价于: 修饰符 返回类型 方法名(参数类型[] 参数名){ ... ... } (所以可变参数不可重载成一维数组)
举例:
class UtilArray{ public static int sum(int ... temp ) { int sum = 0; for (int i = 0; i < temp.length; i++) { sum = sum + temp[i]; } // for(int a : temp) { // sum = sum + a; // } return sum; } } public class Test { public static void main(String[] args) { // TODO Auto-generated method stub int res[] = new int[] {1, 2, 3, 4, 5}; System.out.println(UtilArray.sum(res)); System.out.println(UtilArray.sum(1, 2, 3, 4, 5)); } }
程序输出:
15 15
结论:
1、可变参数的实参可以为0个或任意多个,当为0个参数时传入长度为0的数组;
2、可变参数的实参可以为 一维 数组类型;
3、可变参数和普通类型参数 一起使用时,只能放在最后;(不明白)
4、一个参数列表中至多有一个可变参数!