Одна из вещей, которые она проверяет, — это наличие хотя бы одной заглавной буквы в пароле. Вот код, во-первых, используемый метод:
Код: Выделить всё
public static boolean checkString(String str) {
char ch;
boolean capitalFlag = false;
for(int i=0;i < str.length();i++) {
ch = str.charAt(i);
capitalFlag = Character.isUpperCase(ch);
}
return capitalFlag;
}
Код: Выделить всё
else if (!checkString(enterPasswordAgain) || !checkString(enterPasswordAgain)){
btnSubmit.setForeground(Color.RED);
btnSubmit.setText("Make sure your password has at least one capital letter.");
System.out.println("false");
}
else {
btnSubmit.setForeground(Color.GREEN);
btnSubmit.setText("Excellent password!");
System.out.println("true");
}
Tldr: каждый раз возвращает false, несмотря на то, что он должен возвращать любое значение CapitalFlag.
Подробнее здесь: https://stackoverflow.com/questions/784 ... urns-false
Мобильная версия