传递String str = null时输出为null

时间:2013-06-28 14:18:56

标签: java

public class StringTest
{
    public static void main(String... args)
    {
        String str=null;
        System.out.println(str);
    }
}

为什么此代码显示为null?当我们将引用变量传递给println()方法时,它将调用toString()方法。对于String类,将调用toString()方法返回当前对象。 String str=null表示不存在任何对象。

3 个答案:

答案 0 :(得分:5)

documentation报告System.out.println(String)

  

打印字符串然后终止该行。此方法的行为就像调用print(String)然后调用println()

print(String)报告的documentation

  

打印一个字符串。 如果参数为null,则打印字符串“null”。否则,字符串的字符将根据平台的默认字符编码转换为字节,并且这些字节的编写方式与write(int)方法完全相同。

答案 1 :(得分:1)

您的回答是here

  

打印一个字符串。 如果参数为null,则字符串“null”为   印刷

请注意“此方法的行为就像调用print(String)然后println()

答案 2 :(得分:0)

尝试 String str =“”;

null表示该内存空间中没有任何内容...如果您使用“”内部空白空间将计数,将同时为该变量创建空间内存将不会显示任何内容(我认为就是这样)