为什么'\ 117'是Java中有效的字符文字?

时间:2013-02-19 05:38:09

标签: java character special-characters

我已将此char定义为 char ch = '\117'

什么样的表示'\117'

我知道escaped-sequence'\n',或unicode`\udddd',其中d是一个十六进制数字,但我从来没有在我的一生中看到'\117'这样的事情! 令人惊讶的是,它确实编译! (输出为O

4 个答案:

答案 0 :(得分:11)

这是ascii的八进制表示。您可以在此处查看更多值:http://donsnotes.com/tech/charsets/ascii.html

答案 1 :(得分:8)

它是八进制的,是C / C ++的延续。

答案 2 :(得分:3)

这是因为它是资本 OR 字符的八进制表示。

如果您尝试打印char ch='\117';,则会看到它打印O

答案 3 :(得分:2)

这是字符“O”的八进制值,当我执行system.out.println(..)时我得到了这个输出:

char ch = '\117';
System.out.println("Char is: " + ch);

输出:

Char is : O