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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

编写Java程序时,经常会遇到一个方法需要多个参数的情况。例如一个求和方法:

public int add(int[] list){
   int sum = 0;
   for (int i=0;i<list.length;i++)
    sum += list;
   return sum;
}

当然也可以利用重载的方式:

public int add(int a,int b){
   return a + b;
}

public int add(int a,int b,int c){
   return a + b + c;
}

如果程序可能的情况较少,重载方式可能是个好的选择。若是可能的情况很多,无疑上面的方法扩展性会更

强一些。但是还有没有更好的办法呢?

JDK5优化了for循环,可以利用它来写更简洁的代码:

public int add(int... list){
   int sum = 0;
   for (int item:list)
    sum += item;
   return sum;
}

注意add(int... list) ,三个点代表的是数量可变的参数,相信这点很多学Java的人都不知道。

另外需要注意的一点是,可变参数必须放在所有参数的最后,例如

add(int... list,int a) 是错误的,但是add(int a,int... list)就是正确的。


2 个回复

倒序浏览
很强大啊.收下了
回复 使用道具 举报
恩呢,是这样的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马