import java.util.Random; import java.util.Scanner;

public class VerificationCode { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入验证码长度:"); int length = scanner.nextInt(); String code = generateCode(length); System.out.println("生成的验证码为:" + code); countCharacter(code); }

// 生成指定长度的验证码
public static String generateCode(int length) {
    String str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
    Random random = new Random();
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < length; i++) {
        int index = random.nextInt(str.length());
        sb.append(str.charAt(index));
    }
    return sb.toString();
}

// 统计验证码中的大写字母、小写字母、数字个数
public static void countCharacter(String code) {
    int upperCount = 0;
    int lowerCount = 0;
    int numberCount = 0;
    for (int i = 0; i < code.length(); i++) {
        char ch = code.charAt(i);
        if (ch >= 'A' && ch <= 'Z') {
            upperCount++;
        } else if (ch >= 'a' && ch <= 'z') {
            lowerCount++;
        } else if (ch >= '0' && ch <= '9') {
            numberCount++;
        }
    }
    System.out.println("大写字母个数:" + upperCount);
    System.out.println("小写字母个数:" + lowerCount);
    System.out.println("数字个数:" + numberCount);
}

}


示例输出:

请输入验证码长度: 8 生成的验证码为:vfrL5K3s 大写字母个数:2 小写字母个数:6 数字个数:2 ``

JAVA循环在控制台输入一个长度可以获取此长度的验证码 1 验证码由大小写字母、数字组成 2 在控制台打印验证码有几个大写字母几个小写字母几个数字

原文地址: https://www.cveoy.top/t/topic/eEOP 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录