JAVA可变参数
2016-05-20 15:34
337 查看
到JAVA 1.4为止,一直无法在Java程序里定义实参个数可变的方法——因为Java要求实参(Arguments)和形参(Parameters)的数量和类型都必须逐一匹配,而形参的数目是在定义方法时就已经固定下来了。尽管可以通过重载机制,为同一个方法提供带有不同数量的形参的版本,但是这仍然不能达到让实参数量任意变化的目的。
Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。
可变参数的特点:
(1)、只能出现在参数列表的最后;
(2)、...(英文状态省略号)位于变量类型和变量名之间,前后有无空格都可以;
(3)、调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
示例
public class MyParameter {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
sum(1.1,2.2,3.3);
}
public static void sum(double...ds){
double sum1=0;
for(int i=0;i<ds.length;i++){
sum1+=ds[i];
System.out.println(ds[i]);
}
System.out.println("相加之和为"+sum1);
}
}
Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。
可变参数的特点:
(1)、只能出现在参数列表的最后;
(2)、...(英文状态省略号)位于变量类型和变量名之间,前后有无空格都可以;
(3)、调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
示例
public class MyParameter {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
sum(1.1,2.2,3.3);
}
public static void sum(double...ds){
double sum1=0;
for(int i=0;i<ds.length;i++){
sum1+=ds[i];
System.out.println(ds[i]);
}
System.out.println("相加之和为"+sum1);
}
}
相关文章推荐
- 深入浅出Java并发编程(一):线程池的使用
- Spring事务超时时间可能存在的错误认识
- [置顶] JAVA 判断是否为json ,区分为 数组 还是 键值对
- java反射机制基础详解
- java CountDownLatch很简单的使用例子
- MyEclipse 2015 Windows版下载地址(已更新最新版Stable 3.0)
- 想要成为java大牛必须知道的25点
- java list 排序
- 学习SpringMVC(十三)之BeanNameViewResolver视图解析器
- Spring注解@Component、@Repository、@Service、@Controller区别
- eclipse 注释模板
- 基础知识
- Java中Calendar时间操作常用方法详解
- JAVA中去掉空格换行符回车等
- Java时间
- JAVA之老马识途
- <s:iterator> struts2迭代器的使用
- 从源码开始编译spring
- JAVA中使用freemark生成自定义文(json、excel、yaml、txt)
- java99:java 基础备忘