长度为5
由4位大写或者小写字母和1位数字组成,同一个字母可重复
数字可以出现在任意位置
public static String createCheckNumber() {
char[] chs = new char[52];
for (int i = 0; i < chs.length; i++) {
if (i <= 25) {
chs[i] = (char) (97 + i);
} else {
chs[i] = (char) (65 + i - 26);
}
}
String checkNumber = "";
Random r = new Random();
for (int i = 0; i < 4; i++) {
int randomIndex = r.nextInt(chs.length);
checkNumber = checkNumber + chs[randomIndex];
}
int number = r.nextInt(10);
checkNumber = checkNumber + number;
char[] checkNumberRandomArray = new char[checkNumber.length()];
for (int i = 0; i < checkNumberRandomArray.length; i++) {
checkNumberRandomArray[i] = checkNumber.charAt(i);
}
for (int i = 0; i < checkNumberRandomArray.length; i++) {
int randomIndex = r.nextInt(checkNumberRandomArray.length);
char temp = checkNumberRandomArray[i];
checkNumberRandomArray[i] = checkNumberRandomArray[randomIndex];
checkNumberRandomArray[randomIndex] = temp;
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < checkNumberRandomArray.length; i++) {
sb.append(checkNumberRandomArray[i]);
}
checkNumber = sb.toString();
return checkNumber;
}