对象[]内的对象[]Java是否返回内存地址?
尝试访问初始对象[]内的对象[]Java是否返回内存地址?,java,arrays,object,Java,Arrays,Object,尝试访问初始对象[]中的任何对象[]返回内存地址,即System.out.println(对象[1]) 如何让它返回其内容呢?在数组(或任何其他对象)上调用System.out.println时,隐式调用其toString()方法(当然,假设它不是null)。数组以一种简单的方式实现它,因此,正如您所提到的,您可以得到地址,这不是很有用 应该为您提供更有用的输出: System.out.println(Arrays.toString(Objects[1])); 或者更好的是,您可以使用打印整
对象[]
中的任何对象[]
返回内存地址,即System.out.println(对象[1])代码>
如何让它返回其内容呢?在数组(或任何其他对象)上调用System.out.println
时,隐式调用其toString()
方法(当然,假设它不是null
)。数组以一种简单的方式实现它,因此,正如您所提到的,您可以得到地址,这不是很有用
应该为您提供更有用的输出:
System.out.println(Arrays.toString(Objects[1]));
或者更好的是,您可以使用打印整个“父”数组:
这么做很简单
outerObj = Object[1];
System.out.println(outerObj[0]);
如果将字符串放入对象中,则可以执行以下操作:
System.out.println(((String)Object[1]));
Java在数组上调用toString()时会打印这些垃圾。
要清晰地打印阵列,请执行以下操作:
Arrays.toString( array );
但是您有一个数组,因此嵌套数组仍然得到toString()处理。
但是有一条出路
Arrays.deepToString( arrayOfArrays);
System.out.println(Arrays.toString(对象[1])代码>?它不是内存地址,它是数字部分的哈希代码,检查toString()它可以工作,但是我必须指定数组是一个对象。System.out.println(Arrays.toString((Object[])对象[1]);返回内容。如何在数组中访问数组中的特定项?
Arrays.deepToString( arrayOfArrays);