import java.util.Random;
import java.util.Scanner;
/**
* 一个4位验证码生成验证器(不区分大小写)
*
* @author WuHongFei
*
*/
public class Demo54 {
public void fangFa() {
StringBuilder string = new StringBuilder();
Random random = new Random();
// 生成一个随机的4位验证码
for (int i = 1; i <= 4; i++) {
String ku = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
string.append(ku.charAt(random.nextInt(ku.length())));
}
System.out.println("验证码:" + string);
// 验证码输入与判断是否相同
while (true) {
Scanner input = new Scanner(System.in);
System.out.println("请输入验证码(不区分大小写):");
String yanZhengMa = input.next();
// 将生成的验证码与用户输入的验证码都转换为小写的进行判断是否相同
if (yanZhengMa.toLowerCase().equals(string.toString().toLowerCase())) {
System.out.println("***您输入的验证码通过!***");
break;
} else {
System.out.println("***您输入的验证码有误!***");
}
}
}
public static void main(String[] args) {
Demo54 demo = new Demo54();
demo.fangFa();
}
}我还想实现一个,看不清刷新验证码的功能(不能获取点击刷新,想通过手动输入-1来实现),但是想了半天也不知道怎么弄!要用到Java基础以外的知识吗?如果我用我现在才学的《Java1,2,3季基础》知识还不能解决的话在下面留言就好,我学到哪里了在解决!
3 回答
已采纳
路人丶丨
TA贡献115条经验 获得超45个赞
yanZhengMa.toLowerCase() //这个不应该放在equals的前边
写equals方法的时候,应该让必定有的值放在equals放在左边,这样不会再输入null的情况下出现nullPointerException
-1那个没听懂
添加回答
举报
0/150
提交
取消