我正在尝试将字符串转换为整数,但是如果不可能的话。
我希望该整数变量具有一个null
值,但是当字符串不可转换时,我会不断获取空指针异常,而在这种情况下,我需要它来捕获异常并按照我想要的方式进行处理是将null
放在整数变量中。
这是我的代码:
String numt=request.getParameter("telephoneClient");
Integer tel;
try{
tel=Integer.parseInt(numt);
} catch(NullPointerException ex1)
{
tel=null;
} catch (NumberFormatException ex2)
{
tel=null;
} catch(Exception ex)
{
tel=null;
}
答案 0 :(得分:-1)
有关INteger.parseInt错误的更多信息,请查看此question。要绕过NPE,可以在尝试解析为numt
之前对Integer
进行空检查。
String numt=request.getParameter("telephoneClient");
Integer tel;
if(null ==numt){
tel = numt;
return tel;
}
else{
try{
tel=Integer.parseInt(numt);
} catch(NullPointerException ex1)
{
tel=null;
} catch (NumberFormatException ex2)
{
tel=null;
} catch(Exception ex)
{
tel=null;
}
}
在try块之前添加了空检查。如果为null,则tel = null,然后返回