Java中的toString()方法
目录
Java中的toString()方法
1. 对象的toString方法
2. 基本类型的toString方法
3. 数组的toString方法
4. 参考文献
对象的toString方法
在JDK API中对Object对象的toString方法说明如下:
toString :
public String toString()
返回该对象的字符串表示。通常,toString 方法会返回一个"以文本方式表示"此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。
Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符"@"和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
返回:
该对象的字符串表示形式。
结论:
如果对象中重写了toString方法,就调用对象自己的toString方法,否则调用Object的toString方法。
基本类型的toString方法
基本类型的toString方法调用的是java.io.PrintStream的println(int)方法,关键代码如下:
write(String.valueOf(i));
可以通过JDK自带的工具javap反编译代码来查看。
找到生成的.class文件所在目录,执行命令:
javap –c 类名
数组的toString方法
对于数组:
代码:
int[] arr = new int[] { 1, 2, 3 };
System.out.println(arr);
输出内容:
[I@60723d7c
结论:
数组也是对象的一种,数组对象不是从某个类实例化来的,而是由JVM直接创建的, 这里调用的是java.lang.Object的toString方法。
参考文献
JDK API