黑马程序员技术交流社区
标题:
动态参数
[打印本页]
作者:
张敬培
时间:
2013-2-2 00:13
标题:
动态参数
java1.5的新特性之一动态参数,动态参数传递的都是同一类型的参数,放到参数的最后面。但是一般什么时候使用动态参数呀?
作者:
杨杨
时间:
2013-2-2 09:32
不确定有几个参数的时候用
作者:
铿锵科技
时间:
2013-2-2 09:59
java可变参数就是一个定义一个参数数组。这个数组与普通的数组定义时有所区别,在定义时是在函数的参数中用三点(...)后加数组名称。
例如:累加所有参数的和
public static int add(int...args){
int sum=0;
for(int i=0;i<args.length;i++){
sum+=args[i];
}
return sum;
}
还可以在参数数组前定义很多的固定格式的参数:
例如:第一个参数是字符串,第二个参数为单精度实娄,第三个为可变参数:字符数组
static void printArgs(String s,float f,char...args){
System.out.println("第一个参数"+s+"第二个参数"+f);
System.out.print("参数数组列表");
for(int i=0;i<args.length;i++){
System.out.print(args[i]+" ");
}
}
要点:可变参是必须定义在函数的最后一个参数,不能定义了可以参数后面还有其他固定格式的参数。
例如:demo(String s,int...args,char c) 是错误的
正确方法为:demo(String s,char c,int...args)
在使用可变参数的函数时,可变参数是不用输入也能调用函数的,而固定格式的参数必须输入才能调用函数。
例如:调用上面的函数 add();是正确的。
printArgs();是错误的。
最少输入前面个个固定参数才能调用函数printArgs,
正确调用:printArgs("pi=",3.14159265f,'a','b','c');
printArgs("pi=",3.14159265f);
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2