3

Java が varargs の長さを計算する方法について、私はかなり混乱しています。

static void hello(Integer... x){

    System.out.println(x.length);
}


public static void hi(){
    hello();
}

これは 0 を出力します。

私が合格したとき:

static void hello(Integer... x){

    System.out.println(x.length);
}


public static void hi(){
    hello(null);
}

これにより、Null ポインター例外がスローされます。

static void hello(Integer... x){

    System.out.println(x.length);
}


public static void hi(){
    Integer[] xIntegers= new Integer[44];
    hello(xIntegers);
}

これは 44 を出力します。

誰かが私を理解するのを手伝ってもらえますか?

4

4 に答える 4