NumberFormatException异常而在Java
问题描述:
一个字符串转换为一个整数值,当我试图解析字符串输入1到一个整数值它崛起的一个NumberFormatException.I've试图如有替换字符串中的空间,但事实并非如此为我工作。NumberFormatException异常而在Java
int number = 0;
String input1 = "12345354987";
try{
ip = Integer.parseInt(input1);
}catch(NumberFormatException e){
System.out.println("not a number");
}
答
12345354987 > 2,147,483,64
整数最大范围是2,147,483,647
和你穿越它。对于大数字,您可以使用Long或BigDecimal。
答
它,因为在字符串的数字超出整数的范围的,如果你真的需要这比使用BigInteger的大型值是这样的:
String input1 = "12345354";
BigInteger ib =new BigInteger(input1);
System.out.println(ib);
或 对于能够适应远距离就可以较小的值使用:
String input1 = "1234535455";
Long ip = Long.parseLong(input1);
System.out.println(ip);
答
您的号码大于整数最大值请使用long然后尝试解析。
您是否尝试过寻找为电子商务的堆栈跟踪?例外通常包含非常有用的信息。 –
@Eran 谢谢,它的工作对我来说..! –
见https://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#MAX_VALUE。 MAX_VALUE = 2_147_483_647 –