Java代码检查密码的字母和数字?

标签 java authentication passwords

第一篇文章是 confusamagin。我的任务是创建一个密码提示程序。需要检查密码以查看其中是否至少包含一位数字和一个字母。此外,密码长度必须在 6 - 10 之间。

我的问题是试图弄清楚如何查看密码中是否存在数字和字母。在检查密码区域我不知道从哪里开始。我不知道如何查看它是否包含字母和数字。我知道如何使用 for 语句进行计数和检查,但它所做的只是检查以查看它是否包含所有字母或所有数字。

import java.util.Scanner;

class Password {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

//------ENTER A USERNAME
        System.out.println("Welcome please enter your username and password.");
        System.out.print("Username >>");
        input.nextLine();


//------PASSWORD AUTHENTICATION BEGIN       
        String password = enterPassword();
            while ( !checkPassword(password) ) {
            System.out.println("Password must be 6 - 10 characters long!"); 
            password = enterPassword();
            }

//------PASSWORD VERIFY
        String passwordverify = enterPassword();
        while (!password.equals(passwordverify)){
            System.out.println("ERROR - Passwords DO NOT MATCH Re-Enter Passwords Again");
            password = enterPassword();

        }

//------ACCEPT PASSWORD     
        System.out.println("Username and Password Accepted!");

        }


//--ENTER PASSWORD STATEMENT
    public static String enterPassword(){
        String password;
        Scanner input = new Scanner(System.in);
        System.out.print("Password >>");
        password = input.nextLine();
        return password;
        }

//--BOOLEAN CHECK PW    
    public static boolean checkPassword(String password){
        int length;
        length = password.length();
            if (length < 6 || length > 11){
            return false;
            }
        for (int i = 0; i < password.length();i++){
            if (!Character.isLetter(password.charAt(i)))
            return false;
        }
        return true;
        }

}

最佳答案

无需写作业......您就走在正确的轨道上,您已确保您的字母数和数字数都至少为 1。

关于Java代码检查密码的字母和数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4892572/

相关文章:

java - 散列密码

java - StringTokenizer 使用 char 分隔标记

Java:为什么 TimeUnit 缺少枚举?

php - Yii:使用 getIsGuest() 或 isGuest

authentication - 无法登录私有(private) docker registry

authentication - 将用户身份验证迁移到 Firebase 身份验证

database - Play Framework 2.1密码加密

java - Quartz 在 GroupMatcher 中提供正则表达式

java - 如何使用 Java Scanner 读取特定单词?

javascript - 将文本框中的文本转换为 keyup 上的密码项目符号