Java 使用Integer.parseInt don';将字符串转换为Int;t工作
我正在使用JavaEE,我需要将这个:Java 使用Integer.parseInt don';将字符串转换为Int;t工作,java,eclipse,tomcat,jakarta-ee,Java,Eclipse,Tomcat,Jakarta Ee,我正在使用JavaEE,我需要将这个:request.getParameter(“id”)转换为int。request.getParameter(“id”)的值为“9”(String)。 当我试图转换为int时 java.lang.NumberFormatException 我已经尝试了java.lang.Integer.parseInt(request.getParameter(“id”))和request.getParameter(“id”,10),但它不起作用 有什么解决办法吗?谢谢。一个
request.getParameter(“id”)
转换为int
。request.getParameter(“id”)
的值为“9”(String
)。
当我试图转换为int
时
java.lang.NumberFormatException
我已经尝试了java.lang.Integer.parseInt(request.getParameter(“id”))
和request.getParameter(“id”,10)
,但它不起作用
有什么解决办法吗?谢谢。一个完整的完整证明代码
String idString = request.getParameter("id");
if(idString != null) {
try {
System.out.println(idString.trim()); // print to verify
int idInt = Integer.parseInt(idString.trim());
}
catch(NumberFormatException nbe) {
nbe.printStackTrace();
}
}
首先,您需要检查
getParameter()
返回的字符串是否为null,然后检查它是否为空(“”
)字符串,然后使用Integer.parseInt()
)
您确定id参数是一个数字吗?尝试修剪字符串是否有任何前导或尾随空格?如果有,您需要在调用
parseInt()
隐藏字符之前对其进行trim()
?尝试修剪字符串:java.lang.Integer.parseInt(request.getParameter(“id”).trim())
。如果这不起作用,可以尝试打印字符串中的字符代码。难以置信-至少有三个人同时有相同的想法-修剪字符串。@VictorStafusa我想知道OP是否未能trim()
修剪字符串。你怎么认为?
String id = request.getParameter("id");
if(null != id && !("".equals(id))) {
try {
int number = Integer.parseInt(id.trim());
}
catch(NumberFormatException e) {
e.printStackTrace();
}
}