Два оператора if выполняются в коде Java - PullRequest
0 голосов
/ 09 апреля 2019

В настоящее время я пытаюсь выполнить проверку формы входа в систему для сотрудников.но я понял в своем выводе проверки, что всякий раз, когда я ввожу значение в текстовое поле имени пользователя, он все равно выскакивает сообщение «пожалуйста, введите ваше имя пользователя», а затем окно сообщения «неверные учетные данные».Вот мой код внизу:

 String username = usernameTxt.getText();
    String password = passwordTxt.getText();


    if  (username.contains(""))
  {
        JOptionPane.showMessageDialog(null,"Please Enter Your Username Credentials.");
    }
    else  if (password.contains (""))
  {
        JOptionPane.showMessageDialog(null,"Please Enter Your Password Credentials.");
    } 
   else if (password.contains ("") && (username.contains("")))
  {
        JOptionPane.showMessageDialog(null,"Please Enter Your Login Credentials.");
    }
   if ((username.contains("staff") && password.contains ("pass")))

    {
        JOptionPane.showMessageDialog(null,"Login Successfull","Success",JOptionPane.INFORMATION_MESSAGE);
        passwordTxt.setText(null);
        usernameTxt.setText(null);
        staffdashboard sd = new staffdashboard();
        sd.setVisible(true);
        this.setVisible(false);   
    }    
    else  
    {
        JOptionPane.showMessageDialog(null,"Invalid Login Details","Login Error",JOptionPane.ERROR_MESSAGE);
        passwordTxt.setText(null);
        usernameTxt.setText(null);
    }

введите окно сообщения пользователя недопустимое окно сообщения с данными для входа в систему

Что я пропускаю и какостановить форму для вывода 2 сообщения сразу?

Ответы [ 2 ]

2 голосов
/ 09 апреля 2019

Проблема в первом операторе if: username.contains("")

Каждая строка содержит пустую строку. Вы должны заменить его на if("".equals(username))

Или используйте StringUtils.isBlank(username);

И то же самое для всех contains("")

0 голосов
/ 09 апреля 2019

@ Ответ Найи правильный, однако вы можете удалить все пустые пробелы, если они не допустимы как допустимые значения, поэтому:

if  (username.trim().equals("")) ...
else  if (password.trim.equals("")) ...
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...