java如何实现动态传参
1、首先我们必须知道为什么要用方法。在Java中使用方法可以大大简化代码,使相同功能的代码封状态到一个方法中便可实现代码的重用。
比如我们想要实现1-10,10-20,20-30等不同阶段数字之和在不用方法的情况下需要写三段代码,如:
int result1=0;
int result2=0;
int result3=0;
for(int i=1;i<=10;i++){
result1+=i;
}
System.out.println("1-10之和为:+result1");
for(int i=10;i<=20;i++){
result2+=i;
}
System.out.println("1-10之和为:+result2");
for(int i=20;i<=30;i++){
result3+=i;
}
System.out.println("1-10之和为:+result3");
2、显然这种代码太过冗余。我们再使用方法来重写这个代码。如:
public static int sum(int n1,int n2){
int result=0;
for(int i=n1;n1<n2;n1++){
result+=n1;
}
return result;
}
3、在上面我们已经使用方法简化了代码。而我们工作中有时会遇到一些参数不确定的时候,比如我们计算一些数字之和。但是有时要计算2个数和,有时要计算3个数的和....
这时候如果固定参数显然也不合适,所以参数就必须不能写固定数量的。
接下来看这一段代码:
public static int sum(int...n){
int result=0;
for(int i=0;i<n.length;i++){
result+=n[i];
}
return result;
}
4、接下来我们可以测试一下程序。
第一次我们可以传2个参数,计算结果。
第二次再换传3个参数数,计算结果。
最后再传更多的参数,计算结果。如:
System.out.println("计算2个数:"+sum(1,5));
System.out.println("计算3个数:"+sum(1,5,10));
System.out.println("计算多个数:"+sum(1,5,10,10,20,5,55,100));
5、在做三次测试中结果都是准确无误的被打印出来了。接着小编简单说明一下这个参数。
sum(int...n)中int...n是表示参数为动态参数,如同数组一般。所以再读取参数时我们就可以如同操作数组一样操作参数即可。
其实main方法参数也可以直接改写为String...args。
6、动态数的应用就写到这里了。如果还有疑问可以直接留言。小编会最快时间回复你的疑问。