【发布时间】:2014-07-12 21:55:24
【问题描述】:
我是初学者,我无法理解 println() 函数的实际工作原理。当我将原始变量传递给它时。它打印它的价值。当我传递一个对象时,为什么它会打印默认的 toString() 方法定义?即
getClass().getName() + '@' + Integer.toHexString(hashCode())
所以当我试图打印出一个数组时。
System.out.println(Arrays.toString(array))
我是覆盖 Object 类的 toString 的默认方法定义,还是只是使用 Arrays 类的 toString() 方法将 Array 转换为 String。
import java.util.Arrays;
public class RevString
{
public static void main(String[] args)
{
String str = "abcde";
int x=2;
String[] e =str.split("---");
System.out.println(e);
System.out.println(Arrays.toString(e)+ " " +"Primitive is " + " " + x);
}
}
【问题讨论】:
-
它确实使用了
toString()方法。除非它在继承链中的某处被覆盖,否则将使用来自Object的那个。
标签: java