开发验证码

package practice;

import java.util.Random;

public class practicedemo3 {
    //目标:随机生成5位验证码(大小写字母和数字)
    public static void main(String[] args) {
        //3.引用方法
        String code=yanzhengma(5);
        System.out.println("验证码是:"+code);
    }

    //1.定义方法,返回验证码

    public static String yanzhengma(int n){    //n是验证码位数,本题为5

        //2.随机产生验证码
        Random r=new Random();  //得到Random类的r对象

        String code="";  //定义一个字符串,放那5位验证码

        for (int i = 0; i < n; i++) {
            int type=r.nextInt(3);//随机在0-2中产生一个数字,这代表的是大写or小写or数字
            switch (type){
                case 0:      // 0代表是大写字母类型
                    // 大写字母是从 A=65 开始到 Z=65+25,所以随机生成0-25  +65,就能代表任意一个大写字母了
                    char ch1 = (char)(r.nextInt(26)+65);  //强制char型
                    code+=ch1;
                    break;

                case 1:      // 1代表是小写字母类型,a=97 z=97+25
                    char ch2 = (char)(r.nextInt(26)+97);  //强制char型
                    code+=ch2;
                    break;

                case 2:      // 2代表是数字型
                    int ch3=r.nextInt(10);  //0-9
                    code+=ch3;
                    break;

            }

        }
        return code;
    }
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值