我对 Java 很陌生,所以请多多包涵。我的任务:要求用户输入密码并写一条消息说明它是否可以接受。密码要求:
- 密码长度至少为 8 个字符
- 它有大写和小写字母
- 至少一个字母后跟一个数字
- 它具有特殊字符之一 $#?!_-=%
我现在真的不知道在 3 号和 4 号上该做什么。我读过一些关于正则表达式的东西,但我们甚至在课堂上都没有。还有其他可能的方法吗?
我对 Java 很陌生,所以请多多包涵。我的任务:要求用户输入密码并写一条消息说明它是否可以接受。密码要求:
我现在真的不知道在 3 号和 4 号上该做什么。我读过一些关于正则表达式的东西,但我们甚至在课堂上都没有。还有其他可能的方法吗?
对于数字 3,您可以使用循环。在其中,您可以通过 isLetter() 方法捕获每个字母,然后通过 isDigit() 方法检查数组的以下元素
boolean isLetterFollowedByNumber;
for (int[] a : nameOfYourArray) {
if (Character.isLetter(array[i]) && Character.isLetter(array[i])) {
isLetterFollowedByNumber = true;
}
}
对于数字 4,您可以将 char 数组的每个元素与特殊字符进行比较
boolean hasCharacter;
for (int[] a : nameOfYourArray) {
if (a == '$' || a == '#' || a == '?' || a == '!' || a == '_'- || a == '=' || a == '%') {
hasCharacter = true;
}
}
我的两个示例都包含 for-each 循环,但您也可以使用 for 循环。祝你任务顺利!