WEB开发网
开发学院软件开发Java java5.0以后才有的可变参数的方法 阅读

java5.0以后才有的可变参数的方法

 2009-09-06 00:00:00 来源:WEB开发网   
核心提示:java5.0以后才有的可变参数的方法,形式如下: 方法名(数据类型 ...数据的引用名) ,数据类型可以为 自定义的类和原始类型,java5.0以后才有的可变参数的方法, 以及某些系统自带类(例如:String ), 现在我们声明一个自定义的用户类 Java代码packagelyx.com.cn;@SuppressW

java5.0以后才有的可变参数的方法,形式如下:

方法名(数据类型 ...数据的引用名) ,数据类型可以为 自定义的类和原始类型, 以及某些系统自带类(例如:String ),

现在我们声明一个自定义的用户类

Java代码    

package lyx.com.cn; 
@SuppressWarnings("serial") 
public class User implements java.io.Serializable{ 
 
 public int age; 
 public String name; 
 
 public User(String name ,int age) { 
 this.name = name; 
 this.age = age; 
 } 
 
 public int getAge() { 
 return age; 
 } 
 
 public void setAge(int age) { 
 this.age = age; 
 } 
 
 public String getName() { 
 return name; 
 } 
 
 public void setName(String name) { 
 this.name = name; 
 } 
} 

现在我们建立一个测试类

Java代码

 
package lyx.com.cn; 
 
/** 
 * @author 李亚希 
 * 天豪工作室 
 * 2009-9-5 
 */ 
public class TestCanArgs { 
 public TestCanArgs() { 
 } 
 //自定义的User类 
 public static void outInfo(User...us) 
 { 
 for(User u:us) 
 { 
  System.out.println(u.getName()+"\t"+u.getAge()); 
 } 
 } 
 /* 
 * 整型数据原始类型 
 * 这里暂时不考虑jdk5.0以后才有的自动装箱和拆箱 
 */ 
  public static void outInfo(int...ints) { 
   for(int i:ints) 
   { 
    System.out.println(i); 
   } 
 } 
  //String 类型 
  public static void outInfo( String...strings ) 
 { 
  for(String str:strings) 
  { 
 System.out.println(str); 
  } 
 } 
 
 public static void main(String[] args) 
 { 
 outInfo( "liyaxi" ,"haoren"); 
 System.out.println("*************************"); 
 outInfo( "liyaxi" ,"haoren" , "tianhao"); 
 System.out.println("*************************"); 
 User u = new User("张三 ", 26); 
 User u2 = new User("李四", 25); 
 User u3 = new User("王五", 24); 
 User[] us=new User[3]; 
 us[0]=u; 
 us[1]=u2; 
 us[2]=u3; 
 outInfo(us); 
 System.out.println("*************************"); 
 int[] intArray= new int[]{2,3,4,5}; 
 outInfo(intArray); 
 } 
} 

输出结果为:

liyaxi
haoren
*************************
liyaxi
haoren
tianhao
*************************
张三 26
李四 25
王五 24
*************************
2
3
4
5

可见可变参数方法的实质是传递参数类型的一个可变长度的数组 ,且可变参数必须为方法参数的最后一个参数(The variable argument type (这里是所传递的参数类型 , 例如:String)of the method outinfo2 must be the last parameter);而且一个方法只能有且仅只能有一个可变参数的参数

Tags:java 以后 有的

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接