Java';s Character.isIdentifierPart()-函数给出的最大整数是什么;“真的”;
我是Java新手——在阅读时,我了解到在命名Java标识符时不能使用某些字符。虽然我同意由于键盘的原因,可供使用的字符可能非常有限(在键盘中不可用),但我想知道Java可以将哪些字符作为标识符。我编写了相应的代码,并使用Character.isJavaIdentifierPart()-问题是我不知道在迭代中使用什么作为最大int值。因为设置i value Character.MAXVALUE(是否取决于所使用的系统?)将其限制为65535,并且我看到有超过65535的字符。谁能帮我一下吗Java';s Character.isIdentifierPart()-函数给出的最大整数是什么;“真的”;,java,unicode,Java,Unicode,我是Java新手——在阅读时,我了解到在命名Java标识符时不能使用某些字符。虽然我同意由于键盘的原因,可供使用的字符可能非常有限(在键盘中不可用),但我想知道Java可以将哪些字符作为标识符。我编写了相应的代码,并使用Character.isJavaIdentifierPart()-问题是我不知道在迭代中使用什么作为最大int值。因为设置i value Character.MAXVALUE(是否取决于所使用的系统?)将其限制为65535,并且我看到有超过65535的字符。谁能帮我一下吗 用于(
用于(int i=0;iUnicode包含超过65536个字符,并且每个新版本的Unicode都会添加新字符。因此,同时,对于任何特定版本的Unicode,都可以用最大的代码标识有效的Java标识符部分字符,该值在未来的版本中可能会有所不同,并且character.MAX\u code\u POINT
可能是唯一可靠的上限。Unicode包含超过65536个字符,每个新版本的Unicode都会添加新字符。因此,同时,对于任何特定版本的Unicode,都可以用最大的代码识别有效的Java标识符部分字符,该值可能与f不同未来版本,和字符。MAX\u code\u POINT
可能是唯一可靠的上限。isJavaIdentifierPart的参数类型为char
。char是一个16位无符号整数。它的值从0到Character.MAX\u值。没有其他可能的char值,否则需要超过16位来存储t哼哼。@JBNizetisJavaIdentifierPart
有一个变量,它接受一个int
。哦,是的,没有找到。如果目标是检查哪些整数是java标识符部分,那么您所需要的就是从Integer.MIN\U值循环到Integer.MAX\U值。@JBNizet从技术上讲,Unicode以U+0和开始(至少现在是这样)我的观点是,如果你不知道,那么测试一个int的所有可能值就会得到你想要的答案。isJavaIdentifierPart的参数类型是char
。char是一个16位无符号整数。它的值从0到Character.MAX\U。没有其他可能的char值,否则您将需要超过16位来存储它们。@jbnisetisJavaIdentifierPart
有一个变量,它接受int
。哦,是的,没有找到。如果目标是检查哪些整数是java标识符部分,那么您只需要从Integer.MIN\u值循环到Integer.MAX\u值。@jbnisetU+0和(至少现在)的馅饼承诺它永远不会超过U+10FFFFSure。我的观点是,如果你不知道这一点,那么测试int的所有可能值将给出你想要的答案。0xf0000–0xfffff和0x100000–0x10ffff保留为私人使用区域,所以实际上,0xeffff将是一个可靠的上限。0xf0000–0xfffff和0x100000–0x10ffff保留为私人使用区域,因此实际上,0x10ffff将是一个可靠的上限。