2016-12-02 20 views
0

チャットクライアントアプリケーションを作成しましたが、ログインダイアログが表示されません。基本的には、ユーザーがフィールドボックスに何かを入力したかどうかを登録ボタンイベントで検出します。このコードは機能しません。 JTextFieldが空白であるかどうかを検出する方法は?

+0

あなたの代わりに空の文字列をチェックしたことがありますか? – JonK

+0

私はnullと等しいかどうかをチェックしようとしましたが(==ではなく!=)、何も起こりません。これは、JTextFieldのuserBoxが決してnullでないかのようです。 –

答えて

1

それは二つの方法で(この場合は、空ではない)空の場合は、確認することができます。 はisEmpty(を使用して)、またはequals("")

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

または

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

ありがとうございました! ==や.equalsを使うときの違いは何ですか? ==は整数ですか? –

+1

@DeanHampson '==' *参照等価*をチェックします。つまり、「これらの2つの参照はまったく同じオブジェクトを指していますか?」です。 '.equals'は論理的な等価性をチェックします。つまり、"これらの2つのオブジェクトは同じものを表しますか? " Integersの '=='は特別な場合です。単に '.equals'を使うことに固執すれば簡単です。 – JonK

1

しようと

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 } 
 
}
このコード

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"); 
 
}

関連する問題