• 随机数工具类


    随机数工具类

      1 /**
      2  * <html>
      3  * <body>
      4  *  <P> Copyright 1994 JsonInternational</p>
      5  *  <p> All rights reserved.</p>
      6  *  <p> Created on 19941115</p>
      7  *  <p> Created by Jason</p>
      8  *  </body>
      9  * </html>
     10  */
     11 package cn.ucaner.alpaca.framework.utils.math;
     12 
     13 import java.util.Random;
     14 
     15 /**
     16 * @Package:cn.ucaner.common.utils.math   
     17 * @ClassName:RandomUtils   
     18 * @Description:   <p> 随机数工具类</p>
     19 * @Author: - Jason 
     20 * @CreatTime:2017年10月26日 上午10:50:29   
     21 * @Modify By:   
     22 * @ModifyTime:  
     23 * @Modify marker:   
     24 * @version    V1.0
     25  */
     26 public class RandomUtils {
     27     
     28     private static final String ALL_CHAR = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
     29     private static final String LETTER_CHAR = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
     30     private static final String NUMBER_CHAR = "0123456789";
     31     
     32     /**
     33      * 获取定长的随机数,包含大小写、数字
     34      * @param length 随机数长度
     35      * @return
     36      */
     37     public static String generateString(int length) { 
     38         StringBuffer sb = new StringBuffer(); 
     39         Random random = new Random(); 
     40         for (int i = 0; i < length; i++) { 
     41                 sb.append(ALL_CHAR.charAt(random.nextInt(ALL_CHAR.length()))); 
     42         } 
     43         return sb.toString(); 
     44     } 
     45     
     46     /**
     47      * 获取定长的随机数,包含大小写字母
     48      * @param length 随机数长度
     49      * @return
     50      */
     51     public static String generateMixString(int length) { 
     52         StringBuffer sb = new StringBuffer(); 
     53         Random random = new Random(); 
     54         for (int i = 0; i < length; i++) { 
     55                 sb.append(LETTER_CHAR.charAt(random.nextInt(LETTER_CHAR.length()))); 
     56         } 
     57         return sb.toString(); 
     58     } 
     59     
     60     /**
     61      * 获取定长的随机数,只包含小写字母
     62      * @param length 随机数长度
     63      * @return
     64      */
     65     public static String generateLowerString(int length) { 
     66         return generateMixString(length).toLowerCase(); 
     67     } 
     68     
     69     /**
     70      * 获取定长的随机数,只包含大写字母
     71      * @param length 随机数长度
     72      * @return
     73      */
     74     public static String generateUpperString(int length) { 
     75         return generateMixString(length).toUpperCase(); 
     76     } 
     77     
     78     /**
     79      * 获取定长的随机数,只包含数字
     80      * @param length 随机数长度
     81      * @return
     82      */
     83     public static String generateNumberString(int length){
     84         StringBuffer sb = new StringBuffer(); 
     85         Random random = new Random(); 
     86         for (int i = 0; i < length; i++) { 
     87                 sb.append(NUMBER_CHAR.charAt(random.nextInt(NUMBER_CHAR.length()))); 
     88         } 
     89         return sb.toString(); 
     90     }
     91     
     92     /**
     93      * For Test by Jason
     94      */
     95     public static void main(String[] args) {
     96         System.out.println("***********Test******************");
     97         System.out.println("大小写数字:"+generateString(10));
     98         System.out.println("大小写字母:"+generateMixString(10));
     99         System.out.println("小写字母:"+generateLowerString(10));
    100         System.out.println("大写字母:"+generateUpperString(10));
    101         System.out.println("纯数字:"+generateNumberString(10));
    102         System.out.println("***********Test******************");
    103     }
    104     
    105 }
    106 //Outputs
    107 //***********Test******************
    108 //大小写数字:SsvQTjEbMW
    109 //大小写字母:nJaVyqdmAP
    110 //小写字母:ppljietimr
    111 //大写字母:YDAGERAFCR
    112 //纯数字:8986305301
    113 //***********Test******************
  • 相关阅读:
    Java基础知识24ThreadPoolExecutor线程池详细使用以及Java VisualVM监控线程使用情况
    Springcloud学习笔记41Springboot整合Druid数据库连接池(@Configuration、@ConfigurationProperties、@EnableConfigurationProperties,@Bean)
    黑科技软件使用08电脑录屏软件汇总和相关使用(录制摄像头)
    Linux学习笔记14Java visualVM 远程连接linux,查看线程和内存占用情况
    RocketMq学习笔记01RocketMq安装(windows环境)与Rocketmqdashboard的web管理页面部署
    Git学习笔记06Idea中使用Git
    RocketMq学习笔记02rocketmq运维控制台DashBoard使用详解
    Linux学习笔记13虚拟机连接本地mysql和开启虚拟机特定端口(物理机访问虚拟机某个端口)
    laravel8 路由报404和控制器不存在问题
    window的浏览器无法访问vm中的虚拟主机地址
  • 原文地址:https://www.cnblogs.com/jasonandy/p/9184825.html
Copyright © 2020-2023  润新知