JDK5.0新特性的学习--可变长参数

有时候,我们传入到方法的参数的个数是不固定的,为了解决这个问题,我们一般采用下面的方法:

1. 重载,多重载几个方法,尽可能的满足参数的个数。显然这不是什么好办法。

2. 将参数作为一个数组传入。虽然这样我们只需一个方法即可,但是,为了传递这个数组,我们需要先声明一个数组,然后将参数一个一个加到数组中。
现在,我们可以使用可变长参数解决这个问题。

声明可变长参数方式如下:

public void mymethod(String arg1,Object… args)

创新互联建站-专业网站定制、快速模板网站建设、高性价比本溪网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式本溪网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖本溪地区。费用合理售后完善,10余年实体公司更值得信赖。

也就是使用…将参数声明成可变长参数。

显然,可变长参数必须是最后一个参数。
例子:

java 代码
  1. publicclass Demo {
  2. publicvoid spark(String key,Object... args){
  3. for(Object o : args){
  4. System.out.println(o);
  5. }
  6. }
  7. publicstaticvoid main(String[] args){
  8. Demo d =new Demo();
  9. d.spark("key1","value1111111");
  10. d.spark("key2","value1111111","value222222");
  11. d.spark("key3","value1111111","value222222","value3333333");
  12. }
  13. }


注意:在研究变长参数的时候,我有一个同事说Object后有几个"."就有几个参数,经过验证他是错的,可以有N多个.

[@more@]
新闻名称:JDK5.0新特性的学习--可变长参数
网址分享:http://scyanting.com/article/gppsic.html