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

java5.0以后才有的可变参数的方法,形式如下:
方法名(数据类型 ...数据的引用名) ,数据类型可以为 自定义的类和原始类型, 以及某些系统自带类(例如:String ),
现在我们声明一个自定义的用户类

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;
}
}

现在我们建立一个测试类
 
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
[color=indigo]
[b]可见可变参数方法的实质是传递参数类型的一个可变长度的数组 ,且可变参数必须为方法参数的最后一个参数(The variable argument type (这里是所传递的参数类型 , 例如:String)of the method outinfo2 must be the last parameter);而且一个方法只能有且仅只能有一个可变参数的参数[/b][/color]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值