Я работаю над проектом и пытаюсь внедрить имя пользователя/пароль. Ниже вы видите код. Всякий раз, когда я нажимаю кнопку входа в систему, имя пользователя изменяется на bobsyouruncle, указывая мне, что он нашел «истинное» значение в методе. Проблема в том, что он всегда делает, независимо от ввода. Это становится еще более запутанным, потому что если я изменил «return true» ниже, чтобы «вернуть false», тогда я ВСЕГДА получаю bobsyouruncle. Какие-либо предложения?Имя и пароль Java всегда верны true
loginButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent event) {
Boolean authenticated = AuthenticateCredentials(usernameField.getText(),passwordField.getPassword());
if(authenticated = true){
usernameField.setText("Bobsyouruncle");
} else {
System.exit(0);
}
}
});
Ниже приведен метод доступа.
private Boolean AuthenticateCredentials(String user, char[] pass) {
//This is only a placeholder.
String theCorrectAnswer = "42";
String theCorrectUser = "FPrefect";
char[] passcode = theCorrectAnswer.toCharArray();
optionPanel.showInternalMessageDialog(securityPanel,"Eggs are not supposed to be green.");
if (user.equals(theCorrectUser) && Arrays.equals(passcode,pass)) {
return true;
} else {
return false;
}
}
Если кто-то хочет сказать мне, что я уже завинчивания в создании безопасного имя пользователя и пароль, чтобы спасти меня неприятности на дороге, что бы денди тоже.
Присмотритесь на ', если (проверка подлинности = истина) {'. Что делает '=' в Java? – Pshemo
если забыть двойное равенство '==' является общей проблемой для вас, вы можете попытаться написать свои условия, такие как '(неизменяемое значение == изменчивое значение)' ie '(true == authenticated)' таким образом, если вы случайно введите '(true = authenticated)' вы получаете ошибку компиляции вместо того, чтобы выяснить, почему она не работает – chancea
@chancea Правда, но в случае логического значения простой 'if (boolValue)' проще и безопаснее, тогда 'if (boolValue == верно) '. Также в случае 'if (boolValue == false)' или 'if (booValue! = True)' мы можем просто написать его как 'if (! BoolValue)'. – Pshemo