在parseDouble或parseInt之后检查JTextfield是否为空

时间:2014-12-08 20:29:05

标签: java user-interface if-statement

我有几个我解析过的JTextfield:

double weedValue = Double.parseDouble(weedField.getText().trim());
int weedSAge = Integer.parseInt(weedSpreadAge.getText().trim());

我的GUI的目的是允许用户将自己的值输入到农场模拟中,该模拟显示农民的移动。我想在我的GUI中使用if语句,在用户没有在JTextfield中输入数据的情况下,然后将使用该字段的默认值。到目前为止,我有以下if语句:

 if (weedValue != 0){
                ModelConstants.setWEED_CREATION_PROB(weedValue);
            }

但是,对于我用于weedValue变量的默认值,用户必须输入" 0"但是,我想要它,这样如果JTextfield为空,将使用分配的默认值。

它不喜欢""因为我正在将一个字符串与一个双字母进行比较,所以我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

尝试:

try
{
    double weedValue = Double.parseDouble(weedField.getText().trim());
}catch(NumberFormatException e)
{
   weedValue = defaultValue;//set default value here
}

然后再使用另一个尝试catch块,对你的int有相同的异常。