繁体   English   中英

使用Double.parseDouble()进行Java文本框验证

[英]Java Text Box Validation Using Double.parseDouble()

我有一个Swing JTextBox ,基本上会持有一个双。

我发现使用:

  Double.parseDouble(this.myTB.getText());

每当Double.parseDouble()获得无效输入时,将抛出异常(因此程序终止)。

我的问题:是否有一种简单的方法可以不抛出异常,而是返回一个整数(-1)说parseDouble()失败了?

我正在尝试为用户弹出一个弹出窗口,说他或她的数据字段无效。

谢谢


编辑:

谢谢哈哈。 我怎么能忘记捕获异常? 这是漫长的一天!

处理此问题的最佳方法是使用try / catch块。

try {
    return Double.parseDouble(this.myTB.getText());
} catch (NumberFormatException e) {
    JOptionPane.showMessageDialog("Oops");
    return -1;
}

JOptionPane是向用户显示警告消息的好方法。

捕获NumberFormatException ,并返回所需的错误值(或从catch子句中执行一些其他操作)。

double value = -1;
try {
    value =  Double.parseDouble(this.myTB.getText());
} catch (NumberFormatException e) {
    e.printStackTrace();
}
return value;

采用

try{
    return Double.parseDouble(this.myTB.getText());
   } catch(NumberFormatException e) {
       return -1;
   }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM