问题
我正在阅读SCJP,我对这一行有疑问:
标识符必须以字母,货币字符($)或连接字符(如下划线(_))开头。标识符不能以数字开头!
它声明有效的标识符名称可以以连接字符开头,例如underscore。我认为下划线是唯一有效的选择吗?还有哪些其他人物?
#1 热门回答(263 赞)
U+005F _ LOW LINE
U+203F ‿ UNDERTIE
U+2040 ⁀ CHARACTER TIE
U+2054 ⁔ INVERTED UNDERTIE
U+FE33 ︳ PRESENTATION FORM FOR VERTICAL LOW LINE
U+FE34 ︴ PRESENTATION FORM FOR VERTICAL WAVY LOW LINE
U+FE4D ﹍ DASHED LOW LINE
U+FE4E ﹎ CENTRELINE LOW LINE
U+FE4F ﹏ WAVY LOW LINE
U+FF3F _ FULLWIDTH LOW LINE
这在Java 7上编译。
int _, ‿, ⁀, ⁔, ︳, ︴, ﹍, ﹎, ﹏, _;
一个例子。在这种情况下,tp是列的名称和给定行的值。
Column ︴tp︴ = table.getColumn("tp", double.class);
double tp = row.getDouble(︴tp︴);
下列
for (int i = Character.MIN_CODE_POINT; i <= Character.MAX_CODE_POINT; i++)
if (Character.isJavaIdentifierStart(i) && !Character.isAlphabetic(i))
System.out.print((char) i + " ");
}
版画
$ _¢¥¥؋৲৳૱฿฿₣₤₥₨₨₨₩₩₩₫₯₰₰₸₸₸₸₸₸﷼﷼﷼﷼﷼﹎﹎﹎ $ $ _¢£¥₩
#2 热门回答(25 赞)
遍历整个65k字符并询问Character.isJavaIdentifierStart(c)。答案是:"承诺"小数8255
#3 热门回答(7 赞)