Java中的数字文字是否允许使用下划线?

时间:2014-05-19 19:03:02

标签: java syntax numbers

您可以在Java中使用数字下划线吗?我在博客中看到了这段代码,但它确实有效,但将来会继续使用吗?它是一个功能还是一个bug?

long oneBillion = 1_000_000_000L;

3 个答案:

答案 0 :(得分:6)

这是Java 7中的新功能。您可以依赖它。但是有一些限制;见the documentation

答案 1 :(得分:1)

Java 7支持在数字文字中使用下划线的功能,以提高所分配值的可读性。

但下划线用法限制在两个数字之间,即不在数值的开头或结尾,但应限制在两位数之间,不应作为l的前缀,f用于表示长和浮点值,而不是在基数前缀之间。

答案 2 :(得分:0)

TL;博士

  

您可以在Java中使用数字下划线吗?

在数字文字中使用:int,long,float,double等,可根据需要对数字进行分组。

使用二进制,十进制,八进制和十六进制表示法。

  

它将来会继续发挥作用吗?

适用于Java 7,Java 8,Java 9及更高版本。

  

是功能还是错误?

特征。

详细

是的,您在Java 7中使用feature added,并继续使用Java 8和Java 9。

您可以在数字之间使用下划线。如果您愿意,您甚至可以在数字之间使用一组多个下划线。您可以在整数(整数)和小数(浮点数,双精度数)上使用它们。在小数中,您可以在小数点的任一侧或两侧使用它们。

您可以在十六进制(基数为16),二进制(基数为2)和八进制(基数为8)的数字以及基数为10的数字中使用它们。

您可以根据需要对任意数量的数字进行分组。

目的是严格人类的可读性。 Java认为下划线没有任何意义。数字文字中是否存在下划线对您的代码有 no 效果。

阅读this half-page of documentation以查看有关正确和错误用法的一些有用示例。