首页 > 解决方案 > 无法计算输入值的值并且错误提示:字符串为空

问题描述

我无法执行计算。由于错误,无法显示值: java.lang.NumberFormatException:空字符串

我为我的控制器得到了这个代码:

        public class Calculate {
             private MainFrame MainFrame;
             private CalculatorModel CalculatorModel;
                public Calculate(MainFrame MainFrame, CalculatorModel CalculatorModel){
                    this.MainFrame = MainFrame;   
                    this. CalculatorModel = CalculatorModel;
                }

                public void CalculateTotalCash() {
                    ActionListener actionListener = new ActionListener() {
                        public void actionPerformed(ActionEvent actionEvent) {  
                            double textField_6 ,textField_7 ,textField_8, textField_15, textField_16, textField_17, textField_18, textField_19, textField_20, textField_21 = 0;
                            try {
                                textField_6 = Double.parseDouble(MainFrame.textField_6.getText());
                                textField_7 = Double.parseDouble(MainFrame.textField_7.getText());
                                textField_8 =  Double.parseDouble(MainFrame.textField_8.getText());
                                textField_15 = Double.parseDouble(MainFrame.textField_15.getText());
                                textField_16 = Double.parseDouble(MainFrame.textField_16.getText());
                                textField_17 = Double.parseDouble(MainFrame.textField_17.getText());
                                textField_18 = Double.parseDouble(MainFrame.textField_18.getText());
                                textField_19 = Double.parseDouble(MainFrame.textField_19.getText());
                                textField_20 = Double.parseDouble(MainFrame.textField_20.getText());
                                textField_21 = Double.parseDouble(MainFrame.textField_21.getText());

                                CalculatorModel.addAll(textField_6, textField_7,textField_8,textField_15,textField_16,textField_17,textField_18,textField_19,textField_20,textField_21);


   MainFrame.textField_22.setText(Double.toString(CalculatorModel.getAnswer()));

                            }catch(NumberFormatException ex){
                                System.out.println(ex);

                                MainFrame.displayErrorMessage("Please Fill in All Fields...");

                            }                               
                        }

                    };                
                  MainFrame.CalculateCashDrawer().addActionListener(actionListener); 

                }
        }

我为我的模型得到了这个代码:

public class CalculatorModel {

    private double answer;

    public void addAll(double textField_6, double textField_7, double textField_8, double textField_15, double textField_16, 
            double textField_17, double textField_18, double textField_19, double textField_20, double textField_21) {
        answer = (0.5 * textField_6) + (0.25 * textField_7) + textField_8 + (10 * textField_15) + (50 * textField_16) 
                + (20 * textField_17) + (100 * textField_18) + (200 * textField_19) + (1000 * textField_20) + (2000 * textField_21);

    }

    public double getAnswer() {
        return answer;
    }

}

我向所有文本字段输入值并单击按钮计算,但随后出现错误。它出什么问题了?

标签: javaeclipsemodel-view-controller

解决方案


抱歉,我的错误只是我调用了错误的 jtextfield。JTextField_6 必须是 JTextField_60。


推荐阅读