如果声明不适用于我的swing应用程序

时间:2013-09-06 10:11:47

标签: java swing if-statement

我是一名java初学者,我使用netbeans编写了这个应用程序。其目的是从文本框中获取输入的值,并在按下按钮时将其显示在消息框中。当我在文本框中给出值时,它工作正常。当我按下按钮而没有给出一个值时,它假设什么都不显示,但它显示一个空的消息框。所以请帮我解决问题。

private void ChecktheloopActionPerformed(java.awt.event.ActionEvent evt) {                                             
       String recno= numsearch1.getText();   
       String srname=searchname.getText();
       if(recno!=null){
       JOptionPane.showMessageDialog(null,recno);
   }
}         

2 个答案:

答案 0 :(得分:0)

在显示对话框之前,您还必须检查字符串是否等于""

private void ChecktheloopActionPerformed(java.awt.event.ActionEvent evt) {                                             
    String recno= numsearch1.getText();   
    String srname=searchname.getText();
    if(!recno.equals("")){
        JOptionPane.showMessageDialog(null,recno);
    }
}

numsearch1.getText();可能会返回一个空字符串,而不是您期望的null

答案 1 :(得分:0)

您必须使用String类的isEmpty()方法检查文本是否为空字符串:

private void ChecktheloopActionPerformed(java.awt.event.ActionEvent evt) {                                             
           String recno= numsearch1.getText();   
           String srname=searchname.getText();
           if(!recno.isEmpty()){
                JOptionPane.showMessageDialog(null,recno);
           }
      }