以前我们通用的验证码都是五个不同的大小写字母,那么今天我就带大家学习一下
利用Java基础怎么生成验证码。
首先我们应该有一个清晰的思路:首先定义一个固定长度的数组用来存储需要生成的字
母;其次生成随机数,这里我用到了Random来生成随机数。最后利用循环进行去重。
生成随机数的常用方法有两种:
1 //第一种是利用Math类 2 //1.产生[0,1)之间的随机数 3 Math.random(); 4 //2.产生指定范围的随机数(m-n)之间的 5 Math.random()*(n-m)+m; 6 //第二种利用Random类 7 Random random = new Random(); 8 int num = random.nextInt();
1 public static void main(String[] args) { 2 //生成固定长度的数组 3 char[] letters = new char[5]; 4 //生成随机数 5 Random random = new Random(); 6 char num=0; 7 boolean flag =true; 8 int count=0; 9 while(count<letters.length){ 10 //判断大小写;当随机数random.nextInt(2)=1时生成小写字母,否则生成大写字母 11 if(random.nextInt(2)==1){ 12 num = (char)(‘a‘+random.nextInt(26)); 13 }else{ 14 num = (char)(‘A‘+random.nextInt(26)); 15 } 16 //判断生成的随机数num与数组内的数据是否相同 17 for(int i=0;i<letters.length;i++){ 18 if(num==letters[i]){ 19 flag =false; 20 break; 21 } 22 } 23 if(flag){ 24 letters[count]=num; 25 count++; 26 } 27 } 28 System.out.println(letters); 29 }
原文:https://www.cnblogs.com/lyq159/p/10464083.html