【发布时间】:2016-01-02 13:48:14
【问题描述】:
作为标题,java 1.8保留了单词“_”。有什么用?
消息:- '_' 不应用作标识符,因为它是源级别的保留关键字
【问题讨论】:
-
感谢您的帮助,我很满意!
作为标题,java 1.8保留了单词“_”。有什么用?
消息:- '_' 不应用作标识符,因为它是源级别的保留关键字
【问题讨论】:
在 Java SE 7 及更高版本中,任意数量的下划线字符 (_) 可以出现在数字文字中数字之间的任何位置。此功能使您能够分隔数字文字中的数字组,从而提高代码的可读性。
例如,如果您的代码包含多位数字,则可以使用下划线字符将数字分成三组,这与使用逗号或空格等标点符号作为分隔符的方式类似。
以下示例显示了在数字文字中使用下划线的其他方式:
long creditCardNumber = 1234_5678_9012_3456L;
long socialSecurityNumber = 999_99_9999L;
float pi = 3.14_15F;
注意:下划线只能放在数字之间。
您不能在以下位置放置下划线:
F、D 或 L 后缀之前以下是下划线位置的一些有效和无效示例:
float pi1 = 3_.1415F; // Invalid; cannot put underscores adjacent to a decimal point
float pi2 = 3._1415F; // Invalid; cannot put underscores adjacent to a decimal point
int x1 = _52; // This is an identifier, not a numeric literal
int x2 = 5_2; // OK (decimal literal)
int x3 = 52_; // Invalid; cannot put underscores at the end of a literal
int x4 = 5_______2; // OK (decimal literal)
我希望这能满足您的要求。
【讨论】:
_ 在 Java 8 中保留的原因。例如你仍然可以使用像__ 这样的标识符。如果_ 显示为变量名或数字标识符,则可以从上下文中清楚地看出。原因是 Java 8 引入了 lambda 表达式,_ 应该在未来的 Java 版本中用作忽略参数的占位符(遗憾的是尚未实现)。