如题,烦请哪位大侠帮忙解释一下!

解决方案 »

  1.   

    打个比方
    void test(int...x)调用:
    可以用
    test(1);//传单个整形
    也可以用test(new int[]{1,2});也可以传整形数组
    当然null也行但是在方法test内,x实际上是个整形数组,即使你传的是单个整形!你试试吧
      

  2.   

    打个比方
    void test(int...x)调用:
    可以用
    test(1);//传单个整形
    也可以用test(new int[]{1,2});也可以传整形数组
    当然null也行但是在方法test内,x实际上是个整形数组,即使你传的是单个整形!你试试吧
      

  3.   

    JDK5 新增的不定长参数,本质上是一个数组
      

  4.   

    你可以这样调用:public class RandomArray {
    public void test(int...x){
    System.out.println("test");
    }
            public static void main(String[] args){
    RandomArray ra = new RandomArray();
    ra.test();
    ra.test(1);
    ra.test(1,2);
    ra.test(new int[]{1,2});
    }}而且你可以再在这个类中添加方法: public void test(){

    }
    public void test(int x){

    }
    public void test(int x,int y){

    }但是你不能添加: public void test(int[] x){

    }会报一个重复定义方法的错误。
    因为jvm在编译test(int...x)时,就是按照test(int[] x)来编译的。
      

  5.   

    hehe,不好意思,来晚了!不过还是谢谢你!