当你看着
reference source of
Console.WriteLine(Object)
,你可以看到。净呼叫数
System.IO.TextWriter.WriteLine(Object)
它会显式检查
null
然后将输出一个空行:
public virtual void WriteLine(Object value) {
if (value==null) {
WriteLine();
}
else {
// Call WriteLine(value.ToString), not Write(Object), WriteLine().
// This makes calls to WriteLine(Object) atomic.
IFormattable f = value as IFormattable;
if (f != null)
WriteLine(f.ToString(null, FormatProvider));
else
WriteLine(value.ToString());
}
}
Debug.WriteLine(Object)
行为方式相同,但有点复杂。它最终会调用
System.Diagnostics.TraceListener.WriteLine(Object)
。