-1

我收到以下异常 - 请告知

java.lang.NumberFormatException: For input string: "2"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:492)

如您所见,“2”似乎没有空格。我只是拆分一个字符串并将“2”作为拆分数组的元素之一,然后在尝试将其解析为 int 时得到它

好心提醒

4

3 回答 3

2

能否请您发布您的代码。因为如果异常是

java.lang.NumberFormatException: For input string: "2"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:492)

这意味着您的字符串说 s 是 2 而不是“2”,对于“2”,您不能使用

Integer myInt = Integer.parseInt(" \"2\" ");

这无论如何都会给你数字格式的例外。因为您不能将字符串拆分为它,所以只能解析数字,Integer.parseIn()而“2”是字符串。

于 2013-07-05T03:14:03.173 回答
1

检查字符串是 2 还是 "2" 如果 2 然后使用

Integer myInt = Integer.parseInt("2");

如果“2”然后跳闸然后申请Integer.parseInt();

于 2013-07-05T03:08:38.837 回答
0

你正在传递“”你肯定有一个双引号,比如

Integer myInt = Integer.parseInt(" \"2\" ");

只需使用

Integer myInt = Integer.parseInt("2");

您的问题出在 Integer 类的这一部分,您可以对其进行调试

digit = Character.digit(s.charAt(i++),radix);

于 2013-07-05T02:59:07.717 回答