每当我从文本字段中删除一个值时,我都会收到错误说明:线程“AWT-EventQueue-0”中的异常java.lang.NumberFormatException:empty String。简而言之,如果用户犯了错误,我希望他能够删除文本字段中的条目并输入新条目。使用下面的代码有没有一个简单的解决方案?
jTextField5.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent e) {
updateField();
}
public void removeUpdate(DocumentEvent e) {
jTextField5.setEnabled(true);
if(!jTextField6.isEnabled())
{
jTextField6.setEnabled(true);
}
updateField();
}
public void insertUpdate(DocumentEvent e) {
updateField();
}
public void updateField() {
double a= Double.parseDouble(jTextField1.getText());
double b =Double.parseDouble(jTextField5.getText());
double c = Double.parseDouble(jTextField4.getText());
{
答案 0 :(得分:1)
在解析文本之前检查每个JTextComponent
是否包含内容
if (!jTextField5.getText().trim().isEmpty()) {
double b = Double.parseDouble(jTextField5.getText());
...
}
除此之外:如果输入任何非数字值,您可能想要抓住NumberFormatException