Java可变参数使用方法

Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。注意:可变参数必须位于最后一项。当可变参数个数多于一个时,必将有一个不是最后一项,所以只支持有一个可变参数。因为参数个数不定,所以当其后边还有相同类型参数时,java无法区分传入的参数属于前一个可变参数还是后边的参数,所以只能让可变参数位于最后一项。

可变参数的特点:

(1)、只能出现在参数列表的最后; 

(2)、...位于变量类型和变量名之间,前后有无空格都可以;

(3)、调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中一数组的形式访问可变参数。

public class Test {

	public static void main(String[] args) {
		int[] arr = { 2, 2, 2, 2 };
		System.out.println(add(2, 3));
		System.out.println(add(3, arr));
		System.out.println(add(2, null));

	}

	/**
	 * 可变参数求和
	 * 
	 * @param x
	 *            加数
	 * @param args
	 *            被加数(可以有多个)
	 * @return 所有数的和
	 */
	private static int add(int x, int... args) {
		int sum = x;
		if (args != null && args.length > 0) {
			for (int i : args) {
				sum += i;
			}
		}
		return sum;
	}

}


你可能感兴趣的:(Java)