随机生成由数字,字母大小写组成的验证码
1、创建verificationCode方法,创建时注意返回值类型为String,参数列表int a接收验证码长度
2、用Random方法随机出0,1,2三个数字,0代表数字,1代表大写字母,2代表小写字母
3、用switch做值的匹配,在case 0中随机获得0~9数字、case 1 中随机获得大写字母在ascii码表中对应值,case 2 中随机获得小写字母在ascii码表中对应值,并强制转换为char类型
4、最后循环,并把每一次循环的结果拼接即可
package com.test;
import java.util.Random;
public class Demo02 {
public static void main(String[] args) {
// 调用verificationCode方法,并给定验证码长度
String verification_code = verificationCode(6);
System.out.println("验证码为:" + verification_code);
}
//定义verificationCode方法
public static String verificationCode(int a) {
// 定义一个空字符串
String verification_code = "";
// 创建Random对象
Random r = new Random();
for (int i = 0; i < a; i++) {
// 确定字符类型(0代表数字,1代表大写字母,2代表小写字母)
int type = r.nextInt(3);
switch (type) {
case 0:
// 随机生成一个0~9数字
verification_code += r.nextInt(10);
break;
case 1:
// 随机生成一个65~90的数字,然后强转为大写字母
verification_code += (char) (r.nextInt(26) + 65);
break;
case 2:
// 随机生成一个97~122的数字,然后强转为小写字母
verification_code += (char) (r.nextInt(26) + 97);
break;
}
}
return verification_code;
}
}