可变长度参数

可变长度参数

  语法:类型...

  例如:int...args       String...args


  (1)可变长度参数要求的个数是:0-N个
    (2)可变长度参数在参数列表中必须在最后一个位置上,且可变长度参数只能有一个:m2(int a,String...args)
    (3)可变长度参数可以当作一个数组来看待

a,

 1 public class ArgsTest {
 2     
 3     public static void main(String[] args){
 4         m();
 5         m(10);
 6         m(10,20);
 7     }
 8 
 9     public static void  m(int... args){
10         System.out.println("m方法执行了!");
11     }
12     
13     

运行:

m方法执行了!
m方法执行了!
m方法执行了!

b.

 1 package Reflect;
 2 
 3 public class ArgsTest {
 4     
 5     public static void main(String[] args){
 6         
 7         m2(100);
 8         m2(100,"abc");
 9         m2(100,"abc","def","ghi");
10     }
11 
12     public static void  m2(int a,String...args){
13         System.out.println("m2方法执行了!");
14     }
15     
16 }

运行结果:

m2方法执行了!
m2方法执行了!
m2方法执行了!

c.可以看作一个数组

 1 package Reflect;
 2 public class ArgsTest {
 3     
 4     public static void main(String[] args){
 5         
 6         m3("1","2","3","ab","cd","efg");
 7     }
 8     
 9     public static void m3(String...args){
10         for(int i=0;i<args.length;i++){
11             System.out.println("m3方法执行了------->"+i+"---------"+args[i]);
12         }
13     }
14     
15 }

运行结果:

m3方法执行了------->0---------1
m3方法执行了------->1---------2
m3方法执行了------->2---------3
m3方法执行了------->3---------ab
m3方法执行了------->4---------cd
m3方法执行了------->5---------efg

posted @ 2020-12-04 21:46  L1998  阅读(252)  评论(0)    收藏  举报