Java 使用Integer.parseInt don';将字符串转换为Int;t工作

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),但它不起作用 有什么解决办法吗?谢谢。一个

我正在使用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)
,但它不起作用


有什么解决办法吗?谢谢。

一个完整的完整证明代码

    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();
        }
    }