java很多api的方法都有可变参数的应用,可变参数,即没有指定方法参数的个数,可传入随意个数合法的参数。
使用可变参数,可以很灵活在方法调用过程中传入参数,类似于方法的重载。
方法的重载:
public void doSth(int a){
……
}
public void doSth(int a,int b){
……
}
public void doSth(int a,int b,int c){
……
}
如果方法体对传入参数的处理方式大体相同,比如求和、求积等等,则可以考虑可变参数的使用:
public void doSth(int… nums){
……
}
求和的可变参数的例子:
public class ChangeParameterTest {
public static void main(String[] args) {
//可变参数方法的调用方式1
sum(1, 2, 3, 4, 5);
//可变参数方法的调用方式2
int arr[] = {1,3,5,7};
sum(arr);
}
// 用可变参数求和
public static void sum(int... nums) {
// nums是一个数组
int sum = 0;
for (int i : nums) {
sum += i;
}
System.out.println(sum);
}
}
使用可变参数时应注意的问题:
1、可变参数只能在参数列表的最后位置。
public void sum(int… nums,int y) 不合格
public void sum(int y, int… nums) 合格
2、方法体中,可以将可变参数当作数组来访问。
public void sum(int… nums)
则有int arr[] = nums;
版权声明:本文为java4found原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。