需求:
- 定义方法实现随机产生一个5位的验证码
- 验证码格式:
- 长度为5
- 前四位是大写字母或者小写字母
- 最后一位是数字
package _exercis; import java.util.Random; public class Captcha { public static void main(String[] args) { printArray(getRandomNum()); } public static int[] getRandomNum() { //创建随机的一个类 Random random = new Random(); //计数器 int count = 0; //准备一个int变量,为了接收随机数字 int randomNum = 0; boolean flag = true; //定义4个长度的数组,存放前四位的大写或者小写字母 int[] num = new int[4]; //默认无限循环 while (flag) { //接收随机数字0-122之间 randomNum = random.nextInt(122); //数组只接收随机数在65-90之间 或者 随机数在97-122之间的 if(randomNum >= 65 && randomNum <= 90 || randomNum >= 97 && randomNum <= 122){ //符合条件的 把数值放进数组中 num[count] = randomNum; //每次判断之后数组的索引+1 count++; } if(count == 4){ //如果计数器等于4,则退出整个循环,-数组的长度,避免发生越界 break; } } return num; } public static void printArray(int[] arr){ System.out.print("你的验证码:"); for(int i = 0; i < arr.length; i++){ //把数组里面的每一个值转为对应的ASCII字母 System.out.print((char)arr[i]); } //随机打印的数字范围在0-9之间 System.out.print((int)(Math.random() * 10)); } }