System.out.println("\1");
我认为它没有编译是因为无法识别的转义序列。
"\1"
究竟代表什么?
这是一个八进制转义序列,如 JLS 的第 3.10.6 节中所列。例如:
String x = "\16";
相当于:
String x = "\u000E";
(作为八进制 16 = Hex E。)
所以\1
我们 U+0001,“标题开始”字符。
根据我的经验,八进制转义序列在 Java 中很少使用,我个人会尽可能避免使用它们。当我想使用数字转义序列指定字符时,我总是使用\uxxxx
.
在java中它是以下值
\u0001