java 可变参数--传数组(转)
程序员文章站
2022-03-25 11:41:59
...
public class TestVarArgus {
• public static void dealArray(int... intArray){
• for (int i : intArray)
• System.out.print(i +" ");
•
• System.out.println();
• }
•
• public static void main(String args[]){
• dealArray();
• dealArray(1);
• dealArray(1, 2, 3);
• }
•}
可以看出来这个可变参数既可以是没有参数(空参数),也可以是不定长的。看到这里估计都能明白,这个不定长的参数其实和数组参数挺像的。事实上,也确实是这么回事儿。编译器会在悄悄地把这最后一个形参转化为一个数组形参,并在编译出的class文件里作上一个记号,表明这是个实参个数可变的方法。请看代码:
dealArray(); //dealArray(int[] intArray{});
• dealArray(1); //dealArray(int[] intArray{1});
• dealArray(1, 2, 3); //dealArray(int[] intArray{1, 2, 3});
转:https://blog.csdn.net/testcs_dn/article/details/38920323
• public static void dealArray(int... intArray){
• for (int i : intArray)
• System.out.print(i +" ");
•
• System.out.println();
• }
•
• public static void main(String args[]){
• dealArray();
• dealArray(1);
• dealArray(1, 2, 3);
• }
•}
可以看出来这个可变参数既可以是没有参数(空参数),也可以是不定长的。看到这里估计都能明白,这个不定长的参数其实和数组参数挺像的。事实上,也确实是这么回事儿。编译器会在悄悄地把这最后一个形参转化为一个数组形参,并在编译出的class文件里作上一个记号,表明这是个实参个数可变的方法。请看代码:
dealArray(); //dealArray(int[] intArray{});
• dealArray(1); //dealArray(int[] intArray{1});
• dealArray(1, 2, 3); //dealArray(int[] intArray{1, 2, 3});
转:https://blog.csdn.net/testcs_dn/article/details/38920323
上一篇: python线程里哪种模块比较适合