2016-12-02 100 views
0

我製作了一個聊天客戶端應用程序,並且卡在登錄對話框中。基本上,我想要註冊按鈕事件來檢測用戶是否輸入任何內容到字段框中。此代碼不起作用。如何檢測JTextField是否爲空?

public class RegButtonListener implements ActionListener 
 
{ 
 
\t public void actionPerformed(ActionEvent event) 
 
\t { 
 
\t \t if(userBox.getText() != null) 
 
\t \t { 
 
\t \t \t System.out.println("Lol"); 
 
\t \t } 
 
\t } 
 
}

+0

您是否嘗試過檢查空字符串代替? – JonK

+0

我試着檢查它是否等於空(==而不是!=),但沒有任何反應。就好像JTextField userBox不會爲空。 –

回答

1

您可以檢查它是否是空的(在這種情況下,不爲空)兩種方式:使用isEmpty( )或equals("")

if (!userBox.getText().isEmpty()){ 
    //code 
} 

if (!userBox.getText().equals("")){ 
    //code 
} 
+0

非常感謝!使用==或.equals時有什麼區別? ==整數? –

+1

@DeanHampson'=='檢查*引用相等*,即「這兩個引用指向完全相同的對象嗎?」。 '.equals'檢查邏輯相等,即「這兩個對象是否代表相同的事物?」。整數的==是一種特殊情況,如果你只是堅持使用'.equals',它就更簡單了。 – JonK

1

試試這個代碼

public class RegButtonListener implements ActionListener 
{ 
    public void actionPerformed(ActionEvent event) 
    { 
     if(event.getSource == userBox) { 
      if(!userBox.getText().isEmpty()) 
      { 
      System.out.println("Lol"); 
      } 
     } 
    } 
} 
1

試試這個..

if(!userBox.getText().equals("")) 
 
{ 
 
    \t System.out.println("ABC"); 
 
}