Java的Character.isIdentifierPart() - 函数给出“true”的最大整数是多少

问题描述 投票:0回答:1

我是Java新手 - 在阅读时,我理解在命名Java标识符时有些某些字符无法使用。虽然我同意由于键盘(键盘中没有)可供使用的字符非常有限,但我想知道Java可以为标识符提供的所有字符是什么。我相应地编写了一个代码,我使用了Character.isJavaIdentifierPart() - 问题是我不知道使用什么作为迭代的最大int值。因为设置i值Character.MAXVALUE(它取决于所使用的系统吗?)将其限制为65535,我看到有超过65535的字符。有人可以帮我这个。

for(int i =0;i<Character.MAX_VALUE; i++) {      
printWriter.println(Character.isJavaIdentifierPart(i) + " " + (char) i + " " + i);
System.out.println(i);

}

如果我使用109385而不是Character.MAX_VALUE,java仍然会识别可以在65535-1以外的标识符中使用的某些字符。有人可以让我知道我可以使用哪个最大值来识别所有可以使用的字符用于java标识符 - 为什么? 2.我理解是因为我的Character.MAX_VALUE是65355,我不能存储除此之外的任何字符。

谢谢!

java unicode
1个回答
2
投票

Unicode包含超过65536个字符,并且每个新版本的Unicode都会添加新字符。因此,同时对于任何特定版本的Unicode,可以识别具有最大代码的有效Java标识符部件字符,对于将来的版本,该值可能是不同的,并且Character.MAX_CODE_POINT可能是唯一可靠的上边界。

© www.soinside.com 2019 - 2024. All rights reserved.