为什么Apache Commons认为数字是“ १२३”?
根据Apache Commons
Lang的文档StringUtils.isNumeric()
,字符串‘१२३’是数字。
由于我认为这可能是文档中的错误,因此我进行了测试以验证该声明。我发现根据Apache Commons,它 是 数字。
为什么这个字符串是数字的?这些字符代表什么?
回答:
因为该“
CharSequence仅包含Unicode数字”(引用链接的文档)。
所有字符对于Character.isDigit
以下字符均返回true
:
某些包含数字的Unicode字符范围:
- 从’\ u0030’到’\ u0039’,ISO-LATIN-1数字(从‘0’到‘9’)
- ’\ u0660’至’\ u0669’,阿拉伯文-印度数字
- 从’\ u06F0’到’\ u06F9’,扩展的阿拉伯文-印度数字
- ’\ u0966’至’\ u096F’,梵文数字
- ’\ uFF10’至’\ uFF19’,全角数字
许多其他字符范围也包含数字。
१२३
梵文数字:
१
是DEVANAGARI DIGIT ONE,\u0967
२
是DEVANAGARI DIGIT两个,\u0968
३
是DEVANAGARI DIGIT 3,\u0969
以上是 为什么Apache Commons认为数字是“ १२३”? 的全部内容, 来源链接: utcz.com/qa/398811.html