作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
为什么 Java 变量名中不允许使用特殊字符($
、_
除外)?
最佳答案
事实并非如此——许多特殊字符实际上对标识符有效。它被定义为 in the JLS #3.8 :
An identifier is an unlimited-length sequence of Java letters and Java digits, the first of which must be a Java letter.
[...]
A "Java letter" is a character for which the methodCharacter.isJavaIdentifierStart(int)
returns true.
A "Java letter-or-digit" is a character for which the methodCharacter.isJavaIdentifierPart(int)
returns true.
例如,这是一个有效的变量名:
String sçèêûá¢é£¥ = "bc";
您可以使用这个简单的代码查看所有有效字符:
public static void main(String args[]) {
for (int i = 0; i < Character.MAX_VALUE; i++) {
if (Character.isJavaIdentifierPart(i)) {
System.out.println("i = " + i + ": " + (char) i);
}
}
}
ps:很好的例子on @PeterLawrey's blog
关于java - java中变量的命名限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12857340/
COW 不是奶牛,是 Copy-On-Write 的缩写,这是一种是复制但也不完全是复制的技术。 一般来说复制就是创建出完全相同的两份,两份是独立的: 但是,有的时候复制这件事没多大必要
我是一名优秀的程序员,十分优秀!