#java #methods #boolean #passwords #password-checker
Вопрос:
Я очень новичок в Java, поэтому, пожалуйста, потерпите меня. Мое задание: Попросите пользователя ввести пароль и напишите сообщение о том, приемлемо это или нет. Требования к паролю:
- длина пароля не менее 8 символов
- он имеет заглавные и строчные буквы
- по крайней мере, за одной буквой следует цифра
- в нем есть один из специальных символов $#?!_-=%
Я действительно не знаю, что теперь делать с номерами 3 и 4. Я кое-что читал о регулярных выражениях, но у нас даже этого не было в классе. существуют ли какие-либо другие возможные методы?
Комментарии:
1. Вы уже написали какой-нибудь код?
2. Это
regex
(расшифровывается как регулярное выражение), и вам это действительно не нужно. Это в основном цикл for, пользовательский ввод и некоторые операторы if.
Ответ №1:
Для номера 3 вы можете использовать цикл. Внутри него вы можете поймать каждую букву с помощью метода isLetter (), а затем проверить следующий элемент вашего массива методом isDigit()
boolean isLetterFollowedByNumber; for (int[] a : nameOfYourArray) { if (Character.isLetter(array[i]) amp;amp; Character.isLetter(array[i])) { isLetterFollowedByNumber = true; } }
Для числа 4 вы можете просто сравнить каждый элемент вашего массива символов со специальными символами
boolean hasCharacter; for (int[] a : nameOfYourArray) { if (a == '
Оба моих примера включают цикл "для каждого", но вы также можете использовать цикл "для". Удачи вам в выполнении вашего задания!
Оба моих примера включают цикл «для каждого», но вы также можете использовать цикл «для». Удачи вам в выполнении вашего задания!
|| a == '#' || a == '?' || a == '!' || a == '_'- || a == '=' || a == '%') { hasCharacter = true; } }