2011-04-29 71 views
0

我是一个Web应用程序员(主要是PHP/JavaScript/Ajax等)。 我想在java中编写这个工资核算应用程序。我需要知道在哪里可以找到关于如何在java中进行基本验证的教程,例如检查如果一个文本框为空,确保只有整数允许等简单的Java验证

我有一个运行这个基本程序,并创建了一个JFrame窗体:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 

     double num1, num2, result; 

     num1 = Double.parseDouble(jTextField1.getText()); 

     num2 = Double.parseDouble(jTextField2.getText()); 

     result = num1 + num2; 

     jLabel4.setText(String.valueOf(result)); 
    } 

我如何能够例如得到验证JTextField的1和2不留空白。即返回一个错误框,让用户知道这两个字段不能留空?

我是想这是一个测试:

if(num1 == 0 && num2 == 0) 
     { 
      JOptionPane.showMessageDialog(null, "You must fill in all fields"); 
     } 

但是,这并不在所有的工作

+1

随着你,你会得到一个NumberFormatException异常,如果是文本是空白的代码Java应用程序。问题不仅仅是验证,而是向用户提供有用的信息。我会这样做的方式是在字段旁边显示一个标签,该标签显示红色错误以指示数据出了什么问题。 (或没什么好的) – 2011-04-29 09:54:49

回答

2

如果它属于摆动,然后检查

jTextField1.getText().trim().length > 0 && jTextField2.getText().trim().length > 0 

!jTextField1.getText().equals("") && !jTextField2.getText().equals("") 

另外阅读一些教程o n swing components

+0

感谢您的回复。我无法得到这个工作。 – 2011-04-29 12:32:33

+0

只做了一些更改。作品 – 2011-04-29 12:56:35

0

对于自己像一个初学者,使用标准库像Apache Commons/Lang将可能是最简单的:

检查,如果值是数字:

// removes whitespace, converts to null if only whitespace, 
// checks whether the remeining string is numeric only 
StringUtils.isNumeric(StringUtils.stripToNull(jTextField1.getText())); 

获得的数值:

int value = Integer.parseInt(jTextField.getText().trim());