请有人向我解释一下为什么在JDK 7中添加了这个特性,以及它是如何工作的?
在浏览JDK 7的新特性时,我发现了以下代码。
int i;
//Java 7 allows underscore in integer
i=3455_11_11;发布于 2013-11-06 07:52:18
这用于对数字中的数字进行分组(例如信用卡等)。
来自甲骨文网站
在Java 7和更高版本中,任意数量的下划线字符(_)可以出现在数字文字中的数字之间的任意位置。例如,此功能使您能够将数字文本中的一组数字分隔开来,这可以提高代码的可读性。 例如,如果代码包含具有多个数字的数字,则可以使用下划线字符将数字分成三组,类似于使用逗号或空格之类的标点符号作为分隔符。
总之,这只是为了可读性。
发布于 2013-11-06 07:51:43
请参阅数字文字中的下划线
在Java 7和更高版本中,任意数量的下划线字符(_)可以出现在数字文字中的数字之间的任意位置。例如,此功能使您能够将数字文本中的一组数字分隔开来,这可以提高代码的可读性。
试试这个:
int num = 111_222;
System.out.println(num); //Prints 111222添加此特性的原因是,有时很难阅读长数字,因此不必计算一个数字需要计算多少个“零”,而是要计算它是一百万还是十万个,您可以这样做:
int myNum = 1_000_000;
现在很容易看到,有两组3的零,而且很明显,这个数字是百万。将其与以下方面进行比较:
int myNum = 1000000;
承认.。这里你必须数每一个零..。
发布于 2013-11-06 07:51:20
JDK 7 _用于数字文字特性只是为了提高可读性。根据文档
在Java 7和更高版本中,任意数量的下划线字符(_)可以出现在数字文字中的数字之间的任意位置。例如,此功能使您能够将数字文本中的一组数字分隔开来,这可以提高代码的可读性。
https://stackoverflow.com/questions/19806632
复制相似问题