Java Long parselong抛出数字格式异常

时间:2014-09-18 21:12:05

标签: java long-integer

我首先使用这个简单的代码

Long.parseLong(4250120140405520712)

它有效,但当我这样做时

Long.parseLong(42501201404055207123)

失败了。添加额外的数字会使其产生数字格式异常。有人可以解释一下

2 个答案:

答案 0 :(得分:3)

假设您正在将String解析为long s:

第一个有效,因为数字4250120140405520712(19位数)小于最大可能的长值Long.MAX_VALUE9223372036854775807L

第二个失败,因为它的长度为20位,大于9223372036854775807L

答案 1 :(得分:0)

long个变量最多只能包含9223372036854775807,请参阅here以获取更多信息。
第二个变量不起作用的原因是您已超出限制所以显示数字格式异常。