您已为字符变量分配了一个变量
'a',该字符变量由单引号引起来,例如(不同于与字符串文本由双引号引起来的,例如
"a")
int。Java会自动将16位无符号
char转换为32位带符号
int。
但是,当字符文字是反斜杠后跟1-3个数字时,它是字符的 八进制
(基数/基数 8)表示。从而:
15
= 1×8 + 5 = 13(回车;与相同'r'
)25
= 2×8 + 5 = 21(NAK字符-否定确认)100
= 1×64 + 0×8 + 0 = 64(@符号;与相同'@'
)
有关字符文字和转义序列的更多信息,请参见JLS部分:
- 3.10.4:字符字面量
- 3.10.6:字符和字符串文字的转义序列
从3.10.6 引用BNF:
OctalEscape: OctalDigit OctalDigit OctalDigit ZeroToThree OctalDigit OctalDigitOctalDigit: one of 0 1 2 3 4 5 6 7ZeroToThree: one of 0 1 2 3



