在不确认参数的情况下,我们该如何去定义方法呢?
2012-02-27 21:08
267 查看
大家可能碰到过类似的情况了,在参数不确定的情况下,我们该怎么去定义一个方法呢?最开始的时候,我的第一想法就是利用数组来保存值,然后在方法的参数中直接就传一个数组就OK了,这样可以吗?绝对可以。老师曾经说过,不想偷懒,不想把代码写精简的程序员不算一个好的程序员。那么有更好的方法吗?答案当然是肯定的。
我在用MyEclipse配置JPA的时候才发现的,让我获益匪浅,发出来给大家分享一下。
举个例子:如果我们现在要运算多个数相加的和。
第一想法代码:
新方法代码
... 这就是可变参数
它的特点:
1.只能出现在参数列表的最后
2....位于变量类型和变量名之间,前后有无空格都行
3.调用可变参数的方法时,编译器会为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
我在用MyEclipse配置JPA的时候才发现的,让我获益匪浅,发出来给大家分享一下。
举个例子:如果我们现在要运算多个数相加的和。
第一想法代码:
新方法代码
public class Varable { public static void main(String[] args) { int a=1,b=2,c=3; System.out.println(NewMethodAdd(a,b,c)); } public static double NewMethodAdd(int...args){ double sum=0; for (int i = 0; i < args.length; i++) { sum+=args[i]; } return sum; } }
... 这就是可变参数
它的特点:
1.只能出现在参数列表的最后
2....位于变量类型和变量名之间,前后有无空格都行
3.调用可变参数的方法时,编译器会为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
public class Varable { public static void main(String[] args) { int a=1,b=2,c=3; double[] numbers=new double[]{a,b,c}; System.out.println(OldMethodAdd(numbers)); } public static double OldMethodAdd(double[] args){ double sum=0; for (int i = 0; i < args.length; i++) { sum+=args[i]; } return sum; } }
相关文章推荐
- 在xml布局文件中,我们既可以设置px,也可以设置dp(或者dip)。一般情况下,我们都会选择使用dp,这样可以保证不同屏幕分辨率的机器上布局一致。但是在代码中,如何处理呢?很多控件的方法中都只提供了
- C# 委托带参数的情况下如何传入到一个方法中
- Jquery如何序列化form表单数据为JSON对象 C# ADO.NET中设置Like模糊查询的参数 从客户端出现小于等于公式符号引发检测到有潜在危险的Request.Form 值 jquery调用iframe里面的方法 Js根据Ip地址自动判断是哪个城市 【我们一起写框架】MVVM的WPF框架(三)—数据控件 设计模式之简单工厂模式(C#语言描述)
- MyEclipse中,当我们写一个类实现一个接口时,会自动生成重写该接口的方法,但是,方法的参数提示不够好,是什么原因导致的呢?该如何解决呢?
- 当我们用showModelessDialog()打开窗口方法参数
- 如何解决JavaScript中UUID作为方法参数在方法中无法传递而数字却正常传递的问题
- 我对Objective-C中一个方法如何传递多个参数的理解
- lr 迭代情况下如何设置参数设置
- python方法参数定义
- 数据库的索引,mysql中的索引|||如何在mysql中对text字段加索引?|||mysql数据库中的字段在什么情况下加索引?|||高手请进:text字段不能做索引,有无其他方法?|||该建那个字段
- php中如何用$_GET[ ]方法获取相同参数第二个值?
- 如何使用web_reg_save_param方法保存的多个参数?
- OpenCV在未知相机内参数情况下的立体图像矫正方法及注意事项
- 如何编写一个修改数值参数的方法
- 定义平面中的一个Circle类, 1编写一个无参数构造函数, 2编写一个有参的构造函数 3在主函数中调用无参构造函数生成圆的实例c1,调用有参构造函数生成圆的实例c2,调用实例方法判断c1和c2是否重
- Loadrunner变量定义、变量与参数互转方法
- php中函数的定义,调用,及获取参数的方法。和位运算等。
- 到底什么是权限?我们应该如何正确理解“权限定义”(请高手指点)
- 如何使用web_reg_save_param方法保存的多个参数?
- IntelliJ IDEA中如何设置忽略@param注释中的参数与方法中的参数列表不一致的