传递字符串 str=null 时输出为空


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 表示该内存空间中没有任何内容...如果您使用 " 该内部的空格将计数,将同时为该变量制作空间内存将不显示任何内容(我认为就是这样(

最新更新