可变参数

可变参数

今天学习反射时遇到Construct的参数为可变参数

原函数

@CallerSensitive
public Constructor<T> getDeclaredConstructor(Class<?>... parameterTypes)
   throws NoSuchMethodException, SecurityException {
   checkMemberAccess(Member.DECLARED, Reflection.getCallerClass(), true);
   return getConstructor0(parameterTypes, Member.DECLARED);
}

举例说明

public static void a(int...x){
}

如果我们要调用这个方法 a(); ,我们可以在a的参数里写int类型的任意个x,也可以不传。
例如 a(2,5,5,5,12);
实际上这个x是个数组,在方法a 中我们可以输出x的长度

public static void a(int[] x){
       System.out.println(x.length);
}

可以看成语法糖,...相当于在底层创建数组,省去new数组
可变参数必须在最后

举例说明

public static void a(int y,int...x){
}

那么调用时a(1,2,5,3,5);第一个数字1是y,后面的都是x;

转载于:https://www.cnblogs.com/here-I-am/p/11353779.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值