我承认这个我以前还真是不知道,汗一个![redface]
------------------------------------------------------
从5.0版本起,Java允许创建带有数量可变的变元的方法。当然不同的资料可能将这项功能称之为:可变长度变元列表,或者,可变变元,或者,var-arg,
或者,vararg,这里,我们习惯称之为:可变元数参数,当然,它们指的是同一件事情。
1 |
首先,澄清一下 变元和参数 |
变元:当调用方法时在圆括号内指定的内容(我们初学编程的时候,首先接触的应该是C吧,在C里面这叫实参)
参数:方法签名中的内容,指定在调用该方法时,它必须接收到什么。
1 |
var-arg的声明规则: |
1 var-agr类型:当声明var-arg参数是,必须指定方法的这个参数可接受的变元的类型,可以是基本类型,也可以是对象类型;
2 基本语法:参数类型+(...)+空格+数组名称(用来保存参数的值);
3 其它参数:使用var-arg的方法中,是允许有其他参数的。
1 |
var-agr的限制: |
1 一个方法中,只能有一个var-arg参数
2 var-arg参数只能出现在参数的最后
可以来看几个声明的例子:
1 |
合法: void doTest(int... x){} void doTest(String name,int... x){} 非法: void doTest(String... a,int... b){} void doTest(int... x,String name){} |
例子程序:
1 |
public class changePara { public static void changeP(int... x){ for(int i=0;i<x.length;i++){ System.out.println(x[i]); } } /** * @param args */ public static void main(String[] args) { changePara.changeP(3,4,5); } } |
>