java标识符

时间:2010-06-30 07:16:45

标签: java

Everywhere据说Java标识符可以包含所有字符(但不是数字),包括$_

但是我注意到像isJavaIdentifierStart这样的方法也会为其他字符返回true 例如§£

是否正确启动带有字符的标识符?

2 个答案:

答案 0 :(得分:5)

如果isJavaIdentifierStart为它返回true,那么按照定义,它是一个有效的Java标识符起始字符,因为那是how the specification defines it

  

标识符:   
IdentifierChars但不是Keyword或BooleanLiteral或NullLiteral   
IdentifierChars:   
JavaLetter   
IdentifierChars JavaLetterOrDigit   
JavaLetter:   
任何Java字母的Unicode字符(见下文)   
JavaLetterOrDigit:   
任何Java字母或数字的Unicode字符(见下文)   
...   
“Java字母”是方法Character.isJavaIdentifierStart(int)返回true的字符。

答案 1 :(得分:0)

The method表示它的含义。

它为§返回false,因为它不是字母,Character.getType('§')不是Character.LETTER_NUMBER,它不是货币符号,并且它不是连接标点字符。

两种货币符号都是如此,因为这是一个特定的标准。