这周内学习了Java的Random班。 我需要写验证码。 在Random中获取伪随机验证码,并比较控制台输入中验证码是否匹配。
代码如下。
import java.util.Random;
import java.util.Scanner;
//*
*4位验证码包含数字,字母不区分大小写。
*/
公共类随机演示{
sannersc=newscannersystem.in;
Random random=new Random ;
//*
*获取验证码
*
* @return
*/
公共字符串获取代码
//保存验证码
String str=’ ‘;
//定义长度为4的char型数组分别存储4位的认证码的任意一个
char[] c=new char[4];
//获取4位验证码
forintI=0; i c.length; I ) {
//使用随机数随机获取大小写和数字
inta=random.nextint3;
ifa1 ) {
//大写字母a至a~bascii代码65-90 ) ) ) ) ) ) ) ) )。
c[I]=char ) ) random.nextint ) 26 ) 65;
elseifa=1a2) ) )。
//数字0至9 ascii代码48-57 ) )。
c[I]=char ) ) random.nextint ) 10 ) 48;
elseifa=2a3 ) ) ) )。
//小写字母a至A~ZASCII代码97-122 ) ) ) )。
c[I]=char ) ) random.nextint ) 26 ) 97;
}
}
//字符串连接
forintI=0; i c.length; I ) {
str=str c[i];
}
返回str;
}
//*
*验证码比较
*/
公共语音比较
String code=getCode ;
System.out.println 认证码为: )代码);
请输入System.out.println ‘验证码: ‘;
String s=sc.nextLine ;
/*
*字符串类的equals ignore case 字符串侦听)方法将此字符串作为
*与另一个String相比,返回布尔类型,与大小写无关。
*/
ifcode.equalsignorecases ) ) )
System.out.println 验证码输入正确! ‘ );
}
}
publicstaticvoidmain 字符串[ ] args ) {
新随机demo ).campare );
}
}
上面的代码充分利用了本人本周学过的String类和Random类的一部分。 也许有更好的方法。 仅限于本人的水平,但先这样做。