【发布时间】:2017-02-04 13:45:07
【问题描述】:
此代码打印某个位置的地址和零。这个地址在哪个位置? 当变量参数方法中没有传递任何参数时,我也有类似的困惑,然后 p 仍然指向一个大小为零的数组。
public class zero
{
static void abc (int ... p ) // variable number of arguments .
{
System.out.println(p.length);
}
public static void main (String qwe[] )
{
int x[] =new int [0] ;
System.out.println(x);
abc () ;
}
}
【问题讨论】:
-
不是地址,是对象的
hashCode -
它打印
0和hashCode(因为这是Object中的toString返回的内容)。System.out.println(Arrays.toString(x));将打印空数组的“值”。 -
空数组?有没有数组?
-
@steve 你声明了它,所以是的,有一个包含 0 个元素的数组(一个空数组)
-
一个大小为零的数组仍然是一个新对象。你可以拥有其中两个,它们不会是同一个东西。