private class CalculateButtonHandler implements ActionListener{
public CalculateButtonHandler(JTextField initialAmmount, JTextField yearsToMaturity, JTextField interestRate){
double endingBalance;
String text = interestRate.getText();
int interestRateInt = Integer.parseInt(text);
String text1 = yearsToMaturity.getText();
int yearsToMaturityInt = Integer.parseInt(text);
String text2 = initialAmount.getText();
int initialAmountInt = Integer.parseInt(text);
endingBalance = initialAmountInt * Math.pow((1 + interestRateInt/1), 1 * yearsToMaturityInt);
}
public void actionPerformed(ActionEvent e){
}
}
當前運行時錯誤: 異常線程「main」 java.lang.NumberFormatException:對於輸入字符串:「」檢查空的JTextField用戶輸入之前
我假設的運行 - 發生時間錯誤是因爲程序運行時沒有輸入,用戶沒有機會輸入要解析爲int的字符串。我無法弄清楚如何檢查這一點。
一個簡單的解決方案可以是,假設它發生在按鈕點擊,禁用按鈕,直到輸入所有有效的輸入。 – 2015-04-04 10:17:39
考慮使用'JSpinner'和['SpinnerNumberModel'](https://docs.oracle.com/javase/8/docs/api/javax/swing/SpinnerNumberModel.html)而不是'JTextField'。 – 2015-04-04 10:28:36
順便說一句,在你的代碼中有一個錯字 - 你使用Integer.parseInt(文本)三次,即使這些變量被命名爲text,text1和text2。 – 2015-04-04 13:00:37