Java一个方法使用可变参数技巧

很久没有写日志了,最近由于项目紧张在研究一些Java的反射机制,想利用该机制更好的完善和封装项目还有代码,今天在研究反射时,沈阳斌子遇到一个问题就是封装一个方法时有可变参数的问题,经上网查找找到如下方式和技巧。

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

public int add(int[] list){
   int sum = 0;
   for (int i=0;i<list.length;i++)
    sum += list[i];
   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)就是正确的。

资料参考:http://www.cnblogs.com/yezhenhan/archive/2012/08/08/2628835.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值