字符串非法转义字符

kos*_*osa 4 java octal

在回答其中一个问题时,我遇到了这个有趣的情况.

如果我有如下字符串,Netbeans不会抱怨它是一个illegal start of expression.

String temp="\19825655.";
Run Code Online (Sandbox Code Playgroud)

一旦我删除'1',它就会抱怨它是一个illegal start of expression.

String temp="\9825655.";
Run Code Online (Sandbox Code Playgroud)

无法弄清楚这种行为的原因.任何输入将不胜感激.

观察:似乎\9\8具有特殊的意义.只为我\9而且\8我得到了illegal start of expression.所有其他组合都没有抱怨.

DJ *_*mby 13

\1是一个八进制转义码.在Escape Sequences中查看 JLS中的字符和字符串文字.