在 java 中将字符串转换为整数值时出现 NumberFormatException

NumberFormatException while converting a string to an integer value in java

当我尝试将 input1 字符串解析为整数值时,它正在上升 NumberFormatException.I我尝试替换字符串中的空格,但它对我不起作用。

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 然后尝试解析。