奇怪的语法 - 数字之间的下划线

时间:2013-08-11 19:25:10

标签: java syntax

按照惯例,当我遇到这个问题时,我一直在研究更多的UIL Java练习表:

int _ = 8;
System.out.println(5_5);

问题是“以下代码段的输出是什么?”

我的第一个猜测是语法错误,但正确的回答实际上是 55

为什么会这样?

1 个答案:

答案 0 :(得分:10)

从Java 7开始,您可以在数字之间加上下划线,以提高可读性:

来自JLS - Section 3.10.1JLS Section 3.10.2

  

允许下划线作为表示整数的数字之间的分隔符。

对于浮点字面值:

  

允许下划线作为表示整数部分的数字之间的分隔符,以及表示分数部分的数字之间以及表示指数的数字之间的分隔符。

例如,1000000000现在可以写为1_000_000_000。所以,对眼睛来说更好,不是吗。

同样,您可以撰写 - 0x7fff_ffff0b0111_1111

关于变量名,_是有效的变量名。根据Java标准,变量名称应以$_letter开头。