Java数组初始化

时间:2013-02-05 21:55:09

标签: java

打印数组初始化的引用变量时会发生什么?

int[] it=new int[10];  
sop(it);  

结果如何?

3 个答案:

答案 0 :(得分:3)

int[] it = new int[10];  
System.out.println(it);

it是一个对象,因此您正在调用println(Object) PrintStream ObjecttoString(),它在内部调用传递的对象上的System.out。数组“toString()类似于hashCode()Class.getName() JavaDoc

toString()

所以输出结果如下:

getClass().getName() + "@" + Integer.toHexString(hashCode());

其中[I@756a7c99 代表数组的深度,[代表Iint是从Arrays.toString()返回的十六进制数值。

阅读{{3}}。


要打印数组,请使用{{3}},例如:

756a7c99

<强>输出:

int[] it = new int[10];
System.out.println(Arrays.toString(it));

答案 1 :(得分:0)

假设sopSystem.out.println,它将显示toString方法返回的字符串结果。在这种情况下,它将是类的名称+“@”+哈希码的六进制。

答案 2 :(得分:0)

[I@30c221

这样的东西

这是新阵列的内存地址

    int[] it=new int[10];
    System.out.println(it);