内容:可以是小写字母,也可以是大写字母,还可以是数字
规则:长度为5
内容中是四位字母,1位数字。
其中数字只有1位,但是可以出现在任意的位置。
package homework;
import java.util.Random;
public class Test2 {
//生成验证码
//内容:可以是小写字母,也可以是大写字母,还可以是数字
//规则:长度为5
//内容中是四位字母,1位数字。
//其中数字只有1位,但是可以出现在任意的位置。
public static void main(String[] args) {
//创建一个数组,把所有的大小写字符存进去
char[] letterArray=new char[26*2];
for (int i=0;i<26;i++){//通过ASCII表来添加
letterArray[i]= (char)(i+65);
letterArray[i+26]=(char)(i+97);
}
//创建一个空数组,将四次随机生成的字符和最后随机生成的数字结果存进去
char[] res=new char[5];
Random rd=new Random();
for (int i=0;i<4;i++){
res[i]=letterArray[rd.nextInt(letterArray.length)];
}
//存入最后一位随机数字,并随机交换位置
res[4]=(char)(rd.nextInt(10)+48);
int pos=rd.nextInt(res.length);
char temp=res[pos];
res[pos]=res[4];
res[4]=temp;
//合并数组,打印出来
StringBuilder sb=new StringBuilder();
for(int i=0;i<res.length;i++){
sb.append(res[i]);
}
System.out.println(sb);
}
}