java 求助 ,短信6位数验证码生成算法!

white_ice 2016-05-06 10:32:18
我用了 int code = (int)(math.random()*1000000);
是不是太简单了点?
...全文
1341 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
white_ice 2016-05-06
  • 打赏
  • 举报
回复
引用 2 楼 vswen5 的回复:
你这个生成的不一定是6位数啊math也打错了是Math
/**
     * 随机产生字符串
     * 
     * @param length 字符串长度
     * 
     * @param type 类型 (0: 仅数字; 2:仅字符; 别的数字:数字和字符)
     * @return
     */
    public static String getRandomStr(int length, int type)
    {
        String str = "";
        int beginChar = 'a';
        int endChar = 'z';
        // 只有数字
        if (type == 0)
        {
            beginChar = 'z' + 1;
            endChar = 'z' + 10;
        }
        // 只有小写字母
        else if (type == 2)
        {
            beginChar = 'a';
            endChar = 'z';
        }
        // 有数字和字母
        else
        {
            beginChar = 'a';
            endChar = 'z' + 10;
        }

        // 生成随机类

        Random random = new Random();
        for (int i = 0; i < length; i++)
        {
            int tmp = (beginChar + random.nextInt(endChar - beginChar));
            // 大于'z'的是数字
            if (tmp > 'z')
            {
                tmp = '0' + (tmp - 'z');
            }
            str += (char) tmp;
        }

        return str;
    }
我又改了下 帮忙给看下吧 谢谢 public static String registerCode(){ String code = ""; int num; while(true){ num = (int)(Math.random()*1000000); String num1 = num +""; if(!num1.equals("0")&&num1.length()==6){ break; } } code = "【】您正在使用手机动态码方式登录,验证码为:"+num+",请勿向任何单位或个人泄漏。"; return code; }
white_ice 2016-05-06
  • 打赏
  • 举报
回复
引用 3 楼 LYH_KING 的回复:
验证码而已,要的是客户端与服务器一致就行。注意短信的时效性就行。
嗯嗯 知道啦
white_ice 2016-05-06
  • 打赏
  • 举报
回复
引用 2 楼 vswen5 的回复:
你这个生成的不一定是6位数啊math也打错了是Math
/**
     * 随机产生字符串
     * 
     * @param length 字符串长度
     * 
     * @param type 类型 (0: 仅数字; 2:仅字符; 别的数字:数字和字符)
     * @return
     */
    public static String getRandomStr(int length, int type)
    {
        String str = "";
        int beginChar = 'a';
        int endChar = 'z';
        // 只有数字
        if (type == 0)
        {
            beginChar = 'z' + 1;
            endChar = 'z' + 10;
        }
        // 只有小写字母
        else if (type == 2)
        {
            beginChar = 'a';
            endChar = 'z';
        }
        // 有数字和字母
        else
        {
            beginChar = 'a';
            endChar = 'z' + 10;
        }

        // 生成随机类

        Random random = new Random();
        for (int i = 0; i < length; i++)
        {
            int tmp = (beginChar + random.nextInt(endChar - beginChar));
            // 大于'z'的是数字
            if (tmp > 'z')
            {
                tmp = '0' + (tmp - 'z');
            }
            str += (char) tmp;
        }

        return str;
    }
谢谢
马七甲 2016-05-06
  • 打赏
  • 举报
回复
验证码而已,要的是客户端与服务器一致就行。注意短信的时效性就行。
qq_24255869 2016-05-06
  • 打赏
  • 举报
回复
有效果就行。。。。。。。。。。
vswen5 2016-05-06
  • 打赏
  • 举报
回复
你这个生成的不一定是6位数啊math也打错了是Math
/**
     * 随机产生字符串
     * 
     * @param length 字符串长度
     * 
     * @param type 类型 (0: 仅数字; 2:仅字符; 别的数字:数字和字符)
     * @return
     */
    public static String getRandomStr(int length, int type)
    {
        String str = "";
        int beginChar = 'a';
        int endChar = 'z';
        // 只有数字
        if (type == 0)
        {
            beginChar = 'z' + 1;
            endChar = 'z' + 10;
        }
        // 只有小写字母
        else if (type == 2)
        {
            beginChar = 'a';
            endChar = 'z';
        }
        // 有数字和字母
        else
        {
            beginChar = 'a';
            endChar = 'z' + 10;
        }

        // 生成随机类

        Random random = new Random();
        for (int i = 0; i < length; i++)
        {
            int tmp = (beginChar + random.nextInt(endChar - beginChar));
            // 大于'z'的是数字
            if (tmp > 'z')
            {
                tmp = '0' + (tmp - 'z');
            }
            str += (char) tmp;
        }

        return str;
    }

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧