基于Java随机生成手机短信验证码的实例代码

作者:lijingyulee 时间:2023-12-22 02:50:49 

简单版


/**   * 产生4位随机数(0000-9999)
  *
  * @return 4位随机数
  */
 public static String getFourRandom() {
   return StringUtils.leftPad(new Random().nextInt(10000) + "", 4, "0");
 }

复杂版


/**
  * 创建指定数量的随机字符串
  * @param numberFlag 是否是数字
  * @param length
  * @return
  */
 public static String createRandom(boolean numberFlag, int length){
   String retStr = "";
   String strTable = numberFlag ? "1234567890" : "1234567890abcdefghijkmnpqrstuvwxyz";
   int len = strTable.length();
   boolean bDone = true;
   do {
     retStr = "";
     int count = 0;
     for (int i = 0; i < length; i++) {
       double dblR = Math.random() * len;
       int intR = (int) Math.floor(dblR);
       char c = strTable.charAt(intR);
       if (('0' <= c) && (c <= '9')) {
         count++;
       }
       retStr += strTable.charAt(intR);
     }
     if (count >= 2) {
       bDone = false;
     }
   } while (bDone);
   return retStr;
 }

总结

以上所述是小编给大家介绍的基于Java随机生成手机短信验证码的实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

来源:https://segmentfault.com/a/1190000018832976

标签:java,短信,验证码
0
投稿

猜你喜欢

  • Java原生HttpClient的使用详解

    2022-06-04 16:29:49
  • IDEA Error:java:无效的源发行版:13的解决过程

    2023-11-25 10:07:19
  • 为什么不建议使用Java自定义Object作为HashMap的key

    2021-09-21 06:15:05
  • resty upload无需依赖的文件上传与下载

    2023-01-17 14:54:31
  • Java多线程 Callable、Future 和FutureTask

    2023-07-24 08:09:23
  • Android自定义控件之广告条滚动效果

    2022-01-27 05:57:45
  • Java面向对象编程(封装/继承/多态)实例解析

    2023-11-11 11:33:09
  • spring 中事务注解@Transactional与trycatch的使用

    2022-08-28 18:26:07
  • Android使用SmsManager实现短信发送功能

    2023-08-24 17:54:20
  • Gradle配置教程之自定义APK名称与输出路径

    2023-03-04 17:35:27
  • Java Floyd算法求有权图(非负权)的最短路径并打印

    2023-04-10 12:53:42
  • WheelView实现上下滑动选择器

    2023-01-02 18:31:03
  • Android自定义ViewPager实例

    2023-03-11 10:24:50
  • Spring-AOP @AspectJ进阶之如何绑定代理对象

    2022-05-31 16:08:38
  • C#中的IEnumerable接口深入研究

    2022-04-06 11:13:42
  • c#中switch case的用法实例解析

    2023-09-20 23:02:51
  • 详解Asp.Net MVC的Bundle捆绑

    2021-09-10 05:21:38
  • Java中的Object类用法总结

    2023-06-06 11:48:36
  • SpringBoot全局配置long转String丢失精度的问题解决

    2023-02-19 22:58:49
  • 详解AndroidStudio JNI +Gradle3.0以上JNI爬坑之旅

    2021-09-01 05:45:04
  • asp之家 软件编程 m.aspxhome.com