我正在进行从字符串到int的简单转换,但获得数字格式异常:
我在java程序中使用:
String cId = "7000000141";
int iCid = Integer.parseInt(cId);
System.out.println(iCid);
获得以下异常:
Exception in thread "main" java.lang.NumberFormatException: For input string: "7000000141"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:459)
at java.lang.Integer.parseInt(Integer.java:497)
为什么我收到上述异常?
答案 0 :(得分:1)
那是因为它超出了整数范围。 integer
允许的最大值为2147483647
在Java 中,以下是最小值和最大值。
width minimum maximum
int: 32 bit -2 147 483 648 +2 147 483 647
long: 64 bit -9 223 372 036 854 775 808 +9 223 372 036 854 775 807
使用' long'而是数据类型
public class HelloWorld
{
public static void main(String[] args)
{
String cId = "7000000141";
long iCid = Long.parseLong(cId);
System.out.println(iCid);
}
}