fre*_*low 3 java string unicode unicode-string string-literals
在0和255之间的字符值可以通过从八进制文字来表示"\000"到"\377".
那么不"\400"应该是编译时错误?Eclipse没有抱怨,但是......这里发生了什么?
它将其解释为"\ 40"+"0"
Java语言规范在此描述了这一点.
OctalEscape:
\ OctalDigit
\ OctalDigit OctalDigit
\ ZeroToThree OctalDigit OctalDigit
OctalDigit: one of
0 1 2 3 4 5 6 7
ZeroToThree: one of
0 1 2 3
Run Code Online (Sandbox Code Playgroud)
它属于建设之中
\ OctalDigit OctalDigit
Run Code Online (Sandbox Code Playgroud)
......后跟'0'.它不属于
\ ZeroToThree OctalDigit OctalDigit
Run Code Online (Sandbox Code Playgroud)
......所以它不是模棱两可或超出范围.有关更多详细信息,请参阅Java语言规范的第3.10.6节.
请注意,出于这个原因,您不能将其用作字符文字:
char x = '\377'; // Fine
char y = '\400'; // Error: unclosed character literal
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
129 次 |
| 最近记录: |