用户登录
用户注册

分享至

在登录注册页面中,除了用户名和密码外,通常也会包含验证码。验证码是用来区分用户是计算机还是人,防止恶意破解密码、刷票、灌水等行为。请查看Random、StringBuilder相关API,定义方法,获

  • 作者: 今晚打老虎-_-
  • 来源: 51数据库
  • 2021-10-08
public class TestDemo02 {
    public static void main(String[] args) {
        //1.定义方法   返回值类型?  参数列表?  返回值String  无参数
        String code = getRandomCode();
        System.out.println("验证码: " + code);
    }

    public static String getRandomCode() {
        //2.创建StringBuilder 对象 ,将可选择的字符都放入 StringBuilder对象中
        StringBuilder sb = new StringBuilder();
        //3.for循环  定义 a - z  利用StringBuilder#append 方法依次添加所有小写字母
        for (char i = 'a'; i <= 'z'; i++)
            //StringBuilder#append 接收
            sb.append(i);
        //4.for循环  定义A -Z, 利用StringBuilder#apend方法  一次添加大写字母
        for (char i = 'A'; i <= 'Z'; i++)
            sb.append(i);
        //5. for 循环  0-9添加
        for (int i = 0; i <= 9; i++)
            sb.append(i);

        //6.创建Random对象 用来保存验证码
        Random rm = new Random();
        String code = "";   //定义初始为空  用于接收验证码
        for (int i = 0; i < 4; i++) {
            //在循环中,使用Random的nextInt方法,随机获取一个从索引0(包含)到字符串的长度(不包含)的索引。
            int index = rm.nextInt(sb.length());   // 从索引0(包含)到字符串的长度(不包含)
            //使用StringBuilder的charAt方法,获取该索引上的字符,将其拼接到验证码字符串中。
            code += sb.charAt(index);
        }
        return code;
    }

}

软件
前端设计
程序设计
Java相关