开发n位的验证码,简单版&&升级版

目录

暴力求解版

稍带逻辑版


hi,我是Cx_330 ,今天带来一道逻辑题;

🧒暴力求解版

package com.Cx_330.array;

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

public class ArrayPlay {
    public static String verificationCode(int number){
        String code="";
        String[] codes={"0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k",
                "l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K",
                "L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};//62个元素
        Random random = new Random();
        for (int i = 0; i < number; i++) {
            int index=random.nextInt(63);
            code+=codes[index];
        }
        return code;
    }
    public static void main(String[] args) {
        System.out.println("请设置您要生成几位验证码: ");
        Scanner scanner = new Scanner(System.in);
        int number=scanner.nextInt();
        String code=verificationCode(number);
        System.out.println("您要的验证码为: "+code+" 请保管好您的验证码并在5分钟内使用");
    }
}

👧稍带逻辑版

package com.Cx_330.array;

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

public class ArrayPlay {
    public static String verificationCode(int number){
        String code="";
        Random random = new Random();
        for (int i = 0; i < number; i++) {
            int choice=random.nextInt(3);
            //0 1 2 代表随机生成的的是  数字 小写字母 大写字母
            switch (choice){
                case 0:
                    //数字  0~9
                    code+=random.nextInt(10);
                    break;
                case 1:
                    //小写字母的ASII 65~65+25
                    code+=(char)(random.nextInt(26)+65);
                    break;
                case  2:
                    code+=(char)(random.nextInt(26)+97);
                    break;
            }
        }
        return code;
    }
    public static void main(String[] args) {
        System.out.println("请设置您要生成几位验证码: ");
        Scanner scanner = new Scanner(System.in);
        int number=scanner.nextInt();
        String code=verificationCode(number);
        System.out.println("您要的验证码为: "+code+" 请保管好您的验证码并在5分钟内使用");
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

C_x_330

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值