(John Williams的问题,来自Coursera论坛,我决定与社区分享,因为我无法在任何地方找到答案。)
以下代码运行时没有错误:
int _j = 1;
//int 2var = 2;
int var2 = 2;
int Kvar = 3; // first letter can be uppercase
int spec$var = 4;
int com_pound_var = 5; // compounding without camel case
int com$pound$two = 6;
int $var = 199;
println(_j);
println(var2);
println(Kvar);
println(spec$var);
println(com_pound_var);
println(com$pound$two);
println($var); //first character can be special
由于编译器接受_j
,Kvar
和$var
作为有效变量名,很明显变量名不需要以小写字母开头。
我无法在引用中的任何位置找到变量命名规则。
处理语言的变量命名规则是什么?
答案 0 :(得分:3)
快速回答:可以从任何字母,下划线和美元符号开始,继续使用字母,数字,下划线和美元符号。详情如下。
我根本无法在参考文献或文档中找到任何内容。但是,在检查源代码时,我发现Processing不是它自己的语言,而是一个运行某些命令的框架。不同之处在于您实际上是在编写不同的语言,而Processing只是为您提供了一些基于脚手架的基础构建。
对于一些技术细节:Processing使用一些标志编译Java Build,旋转虚拟机(Java VM,与完整的虚拟机不同)并连接到它以获取输入和输出流(这就是为什么您可以在单独的窗口中与鼠标交互或获取自己程序的控制台输出。 (Source。)
您可能已经猜到的这种语言是Java。
话虽如此,回答这个问题的实际文档是Java Language Specification,为简化起见,它就像你得到答案一样接近。 (但如果你真的想知道,it's a mess。)
具体来说,Identifiers部分,我将在下面总结:
A-Z
,a-z
),下划线(_
),美元符号($
)或任何unicode“字母”开头(重音,中文等Details。)0-9
)。也可以包含其他unicode“字母”(Details。)false
,true
,null
我希望这有帮助!调查很有趣。