将String转换为Integer时获取数字格式异常

时间:2017-06-24 04:10:54

标签: java numberformatexception

我正在编写一个代码,用于将字符串中给出的数字转换为整数。但是它给出了超过9位数的数字格式异常。有没有其他办法可以做到这一点。

public class StringToInt {

public static void main(String args[])
{
    try
    {
        long test =Integer.valueOf("9007199254");   
        System.out.println("num :"+test); 
    }catch(NumberFormatException e)
    {
        System.out.println("Error..."+e.toString());
    }

}

}

2 个答案:

答案 0 :(得分:2)

  

但是它为超过9位的数字提供了数字格式异常。

考虑使用long类型,因为您的数字大于整数最大范围(2,147,483,647)。

long test =Long.valueOf("9007199254"); 

答案 1 :(得分:1)

int限制为2,147,483,647,这就是它给出NumberFormatException

的原因

尝试使用long

long test =Long.valueOf("9007199254");