Object []里面的Object []返回内存地址?

时间:2014-11-27 07:07:20

标签: java arrays object

尝试访问初始Object[]内的任何Object[]都会返回内存地址,即System.out.println(Object[1]);

如何让它返回其内容?

4 个答案:

答案 0 :(得分:0)

当您在数组(或任何其他对象)上调用System.out.println时,您隐式调用其toString()方法(假设它不是null,当然)。数组以一种微不足道的方式实现它,所以,正如你所提到的,你得到的地址不是很有用。

Arrays.toString应该为您提供更多有用的输出:

System.out.println(Arrays.toString(Objects[1])); 

或者更好的是,您可以使用Arrays.deepToString打印整个"父母"阵列:

System.out.println(Arrays.deepToString(Objects)); 

答案 1 :(得分:0)

简单做到这一点

outerObj = Object[1];
System.out.println(outerObj[0]);

答案 2 :(得分:0)

如果要在对象中放置String,则可以执行以下操作:

System.out.println(((String)Object[1]));

答案 3 :(得分:0)

Java在数组上调用toString()时打印出垃圾 要清晰地打印阵列:

Arrays.toString( array );

但是你有一个数组数组,所以嵌套数组仍然得到toString()处理 但!有一条出路!

Arrays.deepToString( arrayOfArrays);