将字符串转换为java中的整数值时的NumberFormatException

时间:2017-12-03 09:30:57

标签: java exception numberformatexception

当我试图将input1字符串解析为整数值时,它会上升一个NumberFormatException。我已尝试替换字符串中的空格,但它没有工作对我来说。

int number = 0;
 String input1 = "12345354987"; 
 try{
   ip = Integer.parseInt(input1);

  }catch(NumberFormatException e){
        System.out.println("not a number");
    }

3 个答案:

答案 0 :(得分:0)

12345354987 > 2,147,483,64

整数最大范围是2,147,483,647,你正在越过它。您可以使用Long或BigDecimal作为大数字。

答案 1 :(得分:0)

因为String中的Number超出整数范围,如果你真的需要这个,而不是像这样使用BigInteger这样的大值:

 String input1 = "12345354"; 
         BigInteger ib =new BigInteger(input1);
         System.out.println(ib);

或 对于适合Long范围的小值,您可以使用:

String input1 = "1234535455"; 
           Long ip = Long.parseLong(input1);
           System.out.println(ip);

答案 2 :(得分:0)

您的数字大于整数最大值请使用long然后尝试解析。