A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张敬培 中级黑马   /  2013-2-2 00:13  /  1403 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

java1.5的新特性之一动态参数,动态参数传递的都是同一类型的参数,放到参数的最后面。但是一般什么时候使用动态参数呀?

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

2 个回复

倒序浏览
不确定有几个参数的时候用
回复 使用道具 举报
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);

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马