可变长度参数原理
public class CaseTest {
public void print(int... arr) {
System.out.println(arr[0]);
}
}
反编译class文件:
说明:
这个可变长度参数的设计就是java的语法糖,方便程序人员的使用规则,但是又不修改代码的执行结果。可以发现jvm将可变长度参数解析成数组,我们遍历可变长度参数时,当作遍历数组即可。
可变长度参数只能作为方法中的最后一个参数,而且只能有一个。
总结
Java中的可变长度参数在经过编译期之后,jvm会将可变长度参数编译成数组。