Из других ответов вы должны получить представление о том, что вам нужно сделать, чтобы исправить свою ошибку. Другим способом является сокращение вашего метода для вызова метода checkFinal
с двумя другими методами в качестве параметров, чтобы вам не нужно было создавать другую переменную.
checkFinal(checkOne(validusername, inputusername),
checkTwo(validpassword, inputpassword));
Несколько дополнительных комментариев о вашем коде:
Метод:
public static boolean checkOne(String validusername, String inputusername) {
boolean usernamecheck = false;
if (validusername == inputusername) {
usernamecheck = true;
}
return usernamecheck;
}
можно изменить на:
public static boolean checkOne(String validusername, String inputusername) {
boolean usernamecheck = validusername.equals(inputusername);
return usernamecheck;
}
Прежде всего, вы не можете сравнить две строки, используя ==
. Во-вторых, вам не нужно сравнивать boolean == true
. Когда вы говорите if (boolean)
, подразумевается, что это означает if (boolean == true)
. То же самое касается и других методов.
Например:
public static boolean checkFinal(boolean usernamecheck, boolean passwordcheck) {
boolean checkFinal = false;
if (usernamecheck == true && passwordcheck == true) {
checkFinal = true;
} else {
checkFinal = false;
}
return checkFinal;
}
можно записать как:
public static boolean checkFinal(boolean usernamecheck, boolean passwordcheck) {
return usernamecheck && passwordcheck;
}