有效数字的NumberFormatException?

时间:2013-11-20 03:40:07

标签: java

我收到此错误

  

java.lang.NumberFormatException:对于输入字符串:“7708166193”

从这行代码中

String[] tmp = in.nextLine().replace("-","").split(" ");
String phoneNumber = tmp[2]+tmp[3];
int number = Integer.parseInt(phoneNumber);

我无法弄清楚为什么会抛出这个错误。

3 个答案:

答案 0 :(得分:2)

最大的int(+ - 20,000)小于7708166193.使用:

long number = Long.parseLong(phoneNumber)

答案 1 :(得分:1)

因为,您的输入值(即7708166193)大于Integer.MAX_VALUE(即2147483647)。使用long代替int

  long number = Long.parseLong(phoneNumber); 

答案 2 :(得分:0)

您似乎尝试使用Integer,但是您达到了最大值2 ^ 31,对于 7708166193 ,您应该使用Long