public class StringTest
{
public static void main(String... args)
{
String str=null;
System.out.println(str);
}
}
为什么这段代码显示 null? 当我们将引用变量传递到方法println()
它将调用toString()
方法。对于 String 类,toString()
方法将被调用返回当前对象。 String str=null
表示不存在任何对象。
文档报告System.out.println(String)
:
打印字符串,然后终止该行。此方法的行为就像它调用
print(String)
然后println()
。
以及print(String)
报告的文档:
打印字符串。如果参数
null
则打印字符串"null"。否则,字符串的字符将根据平台的默认字符编码转换为字节,并且这些字节完全按照write(int)
方法的方式写入。
你的答案在这里:
打印字符串。如果参数为 null,则字符串 "null" 为 打印。
请注意,">此方法的行为就像它调用 print(String( 然后调用 println((">
尝试字符串 str=";
null 表示该内存空间中没有任何内容...如果您使用 " 该内部的空格将计数,将同时为该变量制作空间内存将不显示任何内容(我认为就是这样(