一起学Java(三十四)----- 可变参数方法

不积跬步,无以至千里;不积小流,无以成江海。

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、一个参数列表中至多有一个可变参数!

猜你喜欢

转载自www.cnblogs.com/smilexuezi/p/12905711.html
今日推荐