随机生成验证码

随机生成验证码

需求:随机生成一个任意位的验证码包含数字、大写字母和小写字母
1.代码实现
java 复制代码
package com.ham;

import java.util.Random;

public class case2 {
    public static void main(String[] args) {
        System.out.println(code(4));
    }

    public static String code(int n){
        Random rd=new Random();
        String code="";
        for (int i=0;i<n;i++){
          int type=  rd.nextInt(3);  //验证码的三种类型
          switch (type){
              case 0: //数字
                  code+=rd.nextInt(10);
                  break;
              case 1: //大写字母
                  char ch1=(char)(rd.nextInt(26)+65);  //数据的强制转换
                  code+=ch1;
                  break;
              case 2: //小写字母
                  char ch2=(char)(rd.nextInt(26)+97);  //数据的强制转换
                  code+=ch2;
                  break;
          }
        }
        return code;
    }
}
2.实现结果
3.实现过程分析

1.构造一个code方法其中该方法传递生成验证码的个数

2.验证码中包含了数字、大写字母、小写字母。通过随机数来确定生成的位置。

3.在生成大写小写字母时通过数据的强制转化将数字对应转化为字符(难点)。

相关推荐
二狗哈7 小时前
Cesium快速入门22:fabric自定义着色器
运维·开发语言·前端·webgl·fabric·cesium·着色器
白狐_7987 小时前
计算机网络复习全书(详细整理)
开发语言·计算机网络·php
黑岚樱梦7 小时前
Linux系统编程
java·开发语言·前端
我只会发热7 小时前
超详细的 idea 类注释、方法注释、行注释配置(图文详解)
java·intellij-idea
Kristen_YXQDN7 小时前
PyCharm 中 pytest 运行 python 测试文件报错:D:\Python_file\.venv\Scripts\python.exe: No module named pytest
运维·开发语言·python·pycharm·pytest
IMPYLH7 小时前
Lua 的 Debug(调试) 模块
开发语言·笔记·python·单元测试·lua·fastapi
姜西西_7 小时前
自动化测试框架pytest之fixture
android·java·pytest
鸽鸽程序猿8 小时前
【项目】【抽奖系统】查询中奖记录
java·spring
计算机徐师兄8 小时前
Java基于微信小程序的物流管理系统【附源码、文档说明】
java·微信小程序·物流管理系统·java物流管理系统小程序·物流管理系统小程序·物流管理系统微信小程序·java物流管理系统微信小程序
古城小栈8 小时前
Spring Boot + 代理 AI:解锁供应链自动化决策新范式
人工智能·spring boot·自动化