我对Java如何计算可变参数的长度感到很困惑:
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);
}
这会引发空指针异常。
和
static void hello(Integer... x){
System.out.println(x.length);
}
public static void hi(){
Integer[] xIntegers= new Integer[44];
hello(xIntegers);
}
这将打印 44。
有人可以帮我理解吗?