【发布时间】:2022-02-01 15:04:13
【问题描述】:
为什么当我尝试Integer.parseInt("80000010", 16) 时会抛出 NumberFormatException??那IS是一个32位的数字,就是java的int大小。
编辑: 最好的部分是这个......
int z = 0x80000010;
System.err.println("equal to " + z);
根据我的计算器打印出-2147483632 确实是0x80000010 ;)
【问题讨论】:
-
80000010 在我的世界中不是负数。
-
您在标题中说“负数”,但示例是正数。
-
Java 不支持 unsigned int 有点“邪恶”
-
缺少无符号很容易解决。但我同意你不应该这样做。 ;)
标签: java