import javax.swing.*;
import java.util.Random;
public class 生成验证码 {
/*public static void main(String[] args) {
String code="";
char[] crr=new char[62];
for (int i=0;i<26;i++){
crr[i]=(char)(‘A’+i);
crr[i+26]=(char)(‘a’+i);
if (i<=9){
crr[i]=(char)(i);
}//这一步有问题
}//把a到z和A到Z和0~9都赋给了crr[]相当于建立了存放验证码单个元素的数据库,存入数组中
String []code1=new String[4];//建立一个数组存放验证码
Random r=new Random();
int index;
for (int i=0;i<4;i++){
index=r.nextInt(crr.length);//取头不取尾
code1[i]=""+crr[index];//把crr中的随机元素给了验证码数组中
//第一个不用比较
if (i>=1){
for (int j=0;j<i;j++) {
if (code1[i].equals(code1[j])) {
index = r.nextInt(crr.length);
code1[i] = "" + crr[index];
}
}
}
code += code1[i];
}
System.out.println(code);
}*/
public static void main(String[] args) {
char Lower = 'a';
char Upper = 'A';
int num = 0;
String[] srr = new String[62];
Random r = new Random();
for (int i = 0; i < 26; i++) {
srr[i] = Lower + "";
Lower++;
}
for (int i = 26; i < 52; i++) {
srr[i] = Upper + "";
Upper++;
}
for (int i = 52; i < 62; i++) {
srr[i] = num + "";
num++;
}
int index = -1;
String[] code = new String[4];
boolean[] flag = new boolean[srr.length];
for (int i = 0; i < code.length; i++) {
do {
index = r.nextInt(srr.length);
} while (flag[index]);
code[i] = srr[index];
flag[index] = true;
}
for (int i=0;i<4;i++) {
System.out.print(code[i]);
}
}
}