Character.getNumericValue() 问题

2022-01-12 00:00:00 char character java

我可能遗漏了什么,但为什么这两个数值等于 -1?

I'm probably missing something, but why are the two numeric values equal to -1?

System.out.println(Character.getNumericValue(Character.MAX_VALUE));
System.out.println(Character.getNumericValue(Character.MIN_VALUE));

返回:

-1
-1

推荐答案

getNumericValue() 将转换实际表示数字的字符(如正常"数字 0-9,但也包括其他数字脚本)到它们的数值.Character.MAX_VALUECharacter.MIN_VALUE所代表的Characters没有这样的数值;它们不是数字.并根据 API 文档:

getNumericValue() will convert characters that actually represent numbers (like the "normal" digits 0-9, but also numerals in other scripts) to their numeric value. The Characters represented by Character.MAX_VALUEand Character.MIN_VALUE do not have such a numeric value; they are not numerals. And according to the API doc:

如果角色没有数值,则返回-1.

If the character does not have a numeric value, then -1 is returned.

相关文章