2

我对 Java 编程非常陌生,我正在学习基于 Java 的课程。我目前正在做这个基于布尔值和 RadioButtons 的咖啡项目。我相信我几乎完成了它,除了我在控制台上收到此错误消息。如果还有其他错误,请告诉我,以便我改正!

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "1 "
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)

    public void purchase()
    {
        //local variables
        String  quantityString, buttonString, nameString, coffeeType;

        float subTotalFloat, priceFloat, taxFloat, grandTotalFloat;
        int quantityInteger;

        //Format the values to currency format
        DecimalFormat valueDecimalFormat = new DecimalFormat("$#0.00");

        //retrieve the input from the  user
        nameString = nameTextField.getText();
        quantityString = quantityTextField.getText();
        buttonString = coffeeType ();

        //change data types
        quantityInteger = Integer.parseInt(quantityString);
        ...
    }
4

3 回答 3

4

更改您Integer.parseInt(quantityString);Integer.parseInt(quantityString.trim());代码,您的代码将正常工作!

于 2014-04-17T04:29:18.417 回答
3

最后你有一个额外的空间。修剪它以删除该空间。

quantityInteger = Integer.parseInt(quantityString.trim());
于 2014-04-17T04:29:09.487 回答
0

试试这个,我在控制台消息“线程中的异常“AWT-EventQueue-0”java.lang.NumberFormatException:对于输入字符串:“1”(在一个之后有一个空格)中找到一个空白空间,所以尝试查找是否有错误地考虑了任何空白,因此 parrint 正在尝试解析字符串 + 空白。

于 2014-04-17T04:32:03.283 回答