Это попытка проверки пароля. Я хотел проверить, имеет ли пароль длиной не менее 8 символов. Если хотя бы 1 символ - это верхний и нижний регистр. Я также хотел проверить, является ли хотя бы один символ не буквенно-цифровым. Я сдаюсь на сегодня. Я отправляю его в stackoverflow, потому что мне интересно, есть ли люди, которые могли бы помочь мне в этом. Я еще не знаю, как быть чрезмерно конкретным с техническими деталями Java о том, почему работает моя программа, и я подозреваю, что если бы я это сделал, я бы не опубликовал ее на stackoverflow.com. Я придерживаюсь того же мнения о том, что java - ужасный язык. Я вынужден, однако, завершить 1 класс java в моем колледже, поэтому я практиковал. Я до сих пор не знаком с этим языком. Ниже моя программа.Проверка пароля. Проблемы с методами проверки пароля
import java.util.Scanner;
public class PasswordChecker {
public static void main(String[] args) {
String Password = "";
Scanner input = new Scanner(System.in);
System.out.println("Enter a password to be checked");
Password = input.next();
PassChkr(Password);
}
private static boolean PassChkr(String a) {
boolean safe = false;
boolean unsafe = true;
boolean hasLowercase = !a.equals(a.toUpperCase());
boolean hasUppercase = !a.equals(a.toLowerCase());
// Does work
if (a.length() >= 8) {
safe = true;
System.out.println("Your password is at least 8 characters long");
// Doesn't work..
}
for (int i = 0; i < a.length(); i++) {
if (hasLowercase == false) {
safe = true;
System.out.println("Your password has a least 1 lowercase character");
}
if (hasUppercase == false) {
safe = true;
System.out.println("Your password has at least 1 uppercase character");
}
}
// for (int i = 0; i < a.charAt(0); i++) {
// if (Character.isLetterOrDigit(i) == false)
// safe = true;
// System.out.println("Your password has at least 1 non letter or digit");
//
return false;
}
}
Первого правила программирования, независимо от языка является: прочитать сообщение об ошибке. Если вы хотите, чтобы мы решили проблему, вы могли бы хотя бы сказать нам, в чем проблема. Java не мешает вам это делать, не так ли? –
У меня возникли проблемы с не-буквенно-цифровым контролером, который прокомментирован в этом, а также строка, которая проверяет, имеет ли она 1 строчную и прописную букву. Я думал, это будет очевидно. Прости. – Espryon
* У меня проблемы *: какие проблемы? –