需求:产生随机5位数验证码
1.长度为5
2.前四位是小写字母或者大写字母
3.最后一位是数字。
第一种方法:
import java.util.Random;
public class Main {
public static void main(String[] args) {
//将前四个数转换为字符串类型
char a1 = (char) randomLetter(0);
char a2 = (char) randomLetter(0);
char a3 = (char) randomLetter(0);
char a4 = (char) randomLetter(0);
Random r = new Random();
int a5 = r.nextInt(10);
System.out.print(a1);
System.out.print(a2);
System.out.print(a3);
System.out.print(a4);
System.out.print(a5);
}
//创建一个产生随机字母的方法
public static int randomLetter(int a) {
Random r = new Random();
while (true) {
a = r.nextInt(58) + 65;
if (a <= 90 || a >= 97) {
break;
}
}
return a;
}
}
第二种方法:
import java.util.Random;
public class Main {
public static void main(String[] args) {
//创建有字母的字符串
//初始化数组
char[] chs = new char[52];
//将字母放入数组中
for (int i = 0; i < chs.length; i++) {
if (i < 26) {
chs[i] = (char) ('A' + i);
} else {
chs[i] = (char) ('A' + i + 6);
}
}
//随机获取索引,来随机获取字母
String result = "";
Random r = new Random();
for (int i = 0; i < 4; i++) {
int randomIndex= r.nextInt(chs.length);
result = result + chs[randomIndex];
}
int latest=r.nextInt(10);
System.out.println(result+latest);
}
}