【问题标题】:What is a zero sized array in java? [duplicate]java中的零大小数组是什么? [复制]
【发布时间】: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
  • 它打印0hashCode(因为这是Object 中的toString 返回的内容)。 System.out.println(Arrays.toString(x)); 将打印空数组的“值”。
  • 空数组?有没有数组?
  • @steve 你声明了它,所以是的,有一个包含 0 个元素的数组(一个空数组)
  • 一个大小为零的数组仍然是一个新对象。你可以拥有其中两个,它们不会是同一个东西。

标签: java arrays methods


【解决方案1】:

第一个:不是地址,是数组的hash code

第二个:无论你有一个0元素的数组作为参数还是p作为0元素的数组,你总是得到0作为长度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-30
    相关资源
    最近更新 更多