为什么标识符不能以数字开头?

为什么在Java中(我不知道任何其他编程语言)标识符不能以数字开头,为什么也不允许以下声明?

int :b;

int -d;

int e#;

int .f;

int 7g;

回答:

通常,您将这种限制放入其中有两个原因:

  1. 用电子方式解析很痛苦。
  2. 对人类来说这是一个痛苦的解析。

考虑以下代码片段:

int d, -d;

d = 3;

-d = 2;

d = -d;

如果-d是合法标识符,那么d末尾有哪个值?-3还是2?这是模棱两可的。

同时考虑:

int 2e10f, f;

2e10f = 20;

f = 2e10f;

最后有什么价值f?这也是模棱两可的。

另外,以任何一种方式阅读都是很痛苦的。如果有人声明2ex10,是200万个错字还是变量名?

确保标识符以字母开头意味着可以与之冲突的唯一语言项目是保留关键字。

以上是 为什么标识符不能以数字开头? 的全部内容, 来源链接: utcz.com/qa/405093.html

回到顶部