内容:可以是小写字母,也可以是大写字母,还可以是数字 规则:长度为5,内容中是四位字母,1位数字,其中数字只有1位,但是可以出现在任意位置
public static void main(String[] args) { Random r = new Random(); //创造一个字符数组去记录52大小写字母 char[] arr = new char[52]; int a=0; int b=0; while (a<52) if (a < 26) { arr[a] = (char) ('A' + a); a++; } else { arr[a] = (char) ('a' + b); a++; b++; } //随机抽取4次 char[] arr1 = new char[4]; for (int i = 0; i < arr1.length; i++) { int number = r.nextInt(arr.length); arr1[i] = arr[number]; } //生成一个数字 int number = r.nextInt(9) + 1; //去创造一个字符数组,将验证码打印进数组 StringBuilder str = new StringBuilder(); str.append(arr1).append(number); String str1 = str.toString(); char[] arr2 = str1.toCharArray(); //打乱字符串里面的数据 for (int i = 0; i < arr2.length; i++) { int newNumber = r.nextInt(arr2.length); char temp = arr2[i]; arr2[i] = arr2[newNumber]; arr2[newNumber] = temp; } System.out.println(arr2); }