最近我在Java中找到了一个数组声明,对我来说它是某种特定的。
String[] book = new String[9_999_999 + 1];
有人可以澄清如何正确阅读本声明。
答案 0 :(得分:4)
JLS说:
<强> 3.10.1。整数文字
允许下划线作为表示整数的数字之间的分隔符。
原始数据类型
在Java SE 7及更高版本中,任何数量的下划线字符(_)都可以出现在数字文字中的数字之间的任何位置。例如,此功能可用于您。分隔数字文字中的数字组,这可以提高代码的可读性。
例如,如果您的代码包含具有多个数字的数字,则可以使用下划线字符分隔三个组中的数字,类似于使用逗号或空格等标点符号作为分隔符的方式。
以下示例显示了在数字文字中使用下划线的其他方法:
long creditCardNumber = 1234_5678_9012_3456L; long socialSecurityNumber = 999_99_9999L; float pi = 3.14_15F; long hexBytes = 0xFF_EC_DE_5E; long hexWords = 0xCAFE_BABE; long maxLong = 0x7fff_ffff_ffff_ffffL; byte nybbles = 0b0010_0101; long bytes = 0b11010010_01101001_10010100_10010010;
答案 1 :(得分:0)
下划线字符用于分隔数字组。它用于为代码添加可读性。所以,9_999_99只不过是9999999.总数将是10000000大小的数组(9999999 + 1)。