Java中的unicode换行符(\u000d)

Java中的unicode换行符(\u000d),java,unicode,Java,Unicode,让我们看看下面的Java代码片段 public class Main { public static void main(String[] args) { // new Character(' \u000d System.out.println("Hello"); } } 在上面的代码中,虽然main()方法中的唯一一行被注释掉了,但它在控制台上显示了输出Hello,尽管这一注释行似乎包含一些语法错误。如果这一行未注释,它将根本无法工作,从而导致编译时错误 为

让我们看看下面的Java代码片段

public class Main {
    public static void main(String[] args) {
        // new Character(' \u000d System.out.println("Hello");
    }
}

在上面的代码中,虽然
main()
方法中的唯一一行被注释掉了,但它在控制台上显示了输出
Hello
,尽管这一注释行似乎包含一些语法错误。如果这一行未注释,它将根本无法工作,从而导致编译时错误


为什么在这里输出“Hello”?

Java解析源代码中的字符转义码,而不仅仅是字符串。
这允许您在不使用Unicode编码的情况下使用Unicode标识符

因此,注释中的
\u000d
被解析为换行符,结束注释并开始实例初始值设定项。

:)\u000d表示CR(回车符),而\u000a表示LF(换行符)