下面是我刚刚编造的一个示例,旨在帮助我理解 java 的内部工作原理。
public class Main {
public static void main(String[] args) {
int[] a;
a = new int[12];
System.out.println(a);
}
}
这会打印出一些垃圾。由于 a 是通过引用传递的,我认为println
获取 a 的内存地址,并将其作为字符串进行威胁。我在这儿吗?你能详细说明到底发生了什么吗?谢谢。 (注意:我对如何打印数组不感兴趣。我知道。)
数组被视为对象,因此默认结果Object#toString()将用作字符串表示形式。另请参阅 Javadoc 的摘录(单击链接):
Object 类的 toString 方法返回一个字符串,该字符串由对象所属的类的名称、at 符号“@”以及对象哈希码的无符号十六进制表示形式组成。换句话说,此方法返回一个等于以下值的字符串:
getClass().getName() + '@' + Integer.toHexString(hashCode())
为了实现你想要的,而是使用Arrays#toString().
System.out.println(Arrays.toString(a));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)