Java - 打印课程

时间:2012-05-09 12:12:11

标签: java arrays methods tostring

如果我有一个具有toString方法的对象数组并且我使用for循环打印数组(例如:简单地array[i]来到达对象并执行System.out.println(array[i]))将使用toString方法被自动调用?它似乎是,但我只想检查这是发生了什么。

2 个答案:

答案 0 :(得分:5)

是的,它会。

事实上,通过隐式调用.toString()来实现这一点的好处是可以在不抛出异常的情况下处理空值。如果array[i]null,则then System.out.println(array[i])将打印null,其中System.out.println(array[i].toString())会引发NullPointerException

这是因为System.out.println(object)方法调用System.out.print(object)调用String.valueOf(object),后者又调用object.toString()

答案 1 :(得分:1)

是的,肯定会。

以下是println(Object)print(Object)方法工作方式的一些API说明。

println(Object)

print(Object)