【问题标题】:java password checker with special characters带有特殊字符的java密码检查器
【发布时间】:2022-01-02 08:25:02
【问题描述】:

我对 Java 很陌生,所以请多多包涵。 我的任务: 要求用户输入密码并写下一条消息,说明它是否可以接受。密码要求:

  1. 密码长度至少为 8 个字符
  2. 它有大写和小写字母
  3. 至少一个字母后跟一个数字
  4. 它有一个特殊字符 $#?!_-=%

我现在真的不知道在 3 号和 4 号上该做什么。我读过一些关于正则表达式的东西,但我们甚至在课堂上都没有。还有其他可能的方法吗?

【问题讨论】:

  • 你写过代码吗?
  • 它是regex(代表正则表达式),您并不需要它。这基本上是一个 for 循环、用户输入和一些 if 语句。

标签: java methods boolean passwords password-checker


【解决方案1】:

对于数字 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 循环。祝你任务顺利!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    • 2021-10-12
    • 2014-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多