随机生成验证码

随机生成验证码

需求:随机生成一个任意位的验证码包含数字、大写字母和小写字母
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.在生成大写小写字母时通过数据的强制转化将数字对应转化为字符(难点)。

相关推荐
Dontla7 分钟前
Rust泛型系统类型推导原理(Rust类型推导、泛型类型推导、泛型推导)为什么在某些情况必须手动添加泛型特征约束?(泛型trait约束)
开发语言·算法·rust
张某布响丸辣9 分钟前
SQL中的时间类型:深入解析与应用
java·数据库·sql·mysql·oracle
喜欢打篮球的普通人14 分钟前
rust模式和匹配
java·算法·rust
java小吕布28 分钟前
Java中的排序算法:探索与比较
java·后端·算法·排序算法
慢生活的人。33 分钟前
SpringSecurity+jwt+captcha登录认证授权总结
java·认证·rbac·权限·验证
Neophyte06081 小时前
C++算法练习-day40——617.合并二叉树
开发语言·c++·算法
向阳12181 小时前
LeetCode40:组合总和II
java·算法·leetcode
慕容复之巅1 小时前
基于MATLAB的条形码的识别图像处理报告
开发语言·图像处理·matlab
云空1 小时前
《InsCode AI IDE:编程新时代的引领者》
java·javascript·c++·ide·人工智能·python·php
zqzgng1 小时前
Python 数据可视化pilot
开发语言·python·信息可视化