Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Java 可变参数列表

Java SE5添加了可变参数列表特性参数可以这样定义,(Object…args)。可变参数用"..."来定义,args是可变参数的数组。举个例子:package sample;
 
class A{}
 
public class NewVarArgs {
     static void printArray(Object...args){
              for(Object obj:args)
                   System.out.print(obj+" ");
              System.out.println();
     }
 
     public static void main(String[] args){
              printArray(new Integer(47),new Float(3.14),new Double(11.11));
              printArray(47,
              printArray("one","two","three");
              printArray(new A(),new A(),new A());
              printArray((Object[])new Integer[]{1,2,3,4});
              printArray();
     }
}输出结果为:47 3.14 11.11
47 3.14 11.11
one two three
sample.A@a90653 sample.A@de6ced sample.A@c17164
1 2 3 4当指定可变参数后,对于给定的可变参数实参,编译器会用这些实参去填充一个参数数组。这就是为什么args可以用foreach去遍历。但如果传入的参数本身就是一个数组时,编译器将接受这个数组作为可变参数列表,而不再为其外层包装为一个新的数组。Java中介者设计模式 http://www.linuxidc.com/Linux/2014-07/104319.htmJava 设计模式之模板方法开发中应用 http://www.linuxidc.com/Linux/2014-07/104318.htm设计模式之 Java 中的单例模式(Singleton) http://www.linuxidc.com/Linux/2014-06/103542.htmJava对象序列化 http://www.linuxidc.com/Linux/2014-10/107584.htm本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-10/108643.htm