欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java中随机生成不同长度字符串的静态方法

程序员文章站 2022-04-06 15:13:13
...
  • 背景

在项目中我们经常会遇到各种,需要随机长度的字符串的需求。那么问题就来了,在代码中写方法比较繁琐,代码量重复使用比较冗余,所以我们需要把它封装成一个工具类来调取使用

  • 工具类代码
package com.framework.util;

import java.util.Random;

/**
 * @Description:
 * @author: ZhangKaiXuan
 * @create: 2020-05-21 下午 2:34
 */
public class StringCodeUtils {

    /**
     *  随机生成字符串
     *  length用户要求产生字符串的长度(方法一)
     * @param length
     * @return
     */
    public static String getRandomStr(int length) {
        String base = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        int randomNum;
        char randomChar;
        Random random = new Random();
        // StringBuffer类型的可以append增加字符
        StringBuffer str = new StringBuffer();
        for (int i = 0; i < length; i++) {
            // 可生成[0,n)之间的整数,获得随机位置
            randomNum = random.nextInt(base.length());
            // 获得随机位置对应的字符
            randomChar = base.charAt(randomNum);
            // 组成一个随机字符串
            str.append(randomChar);
        }
        return str.toString();
    }


    /**
     *  length用户要求产生字符串的长度(方法二)
     * @param length
     * @return
     */
    public static String getRandomString(int length){
        String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        Random random=new Random();
        StringBuffer sb=new StringBuffer();
        for(int i=0;i<length;i++){
            int number=random.nextInt(62);
            sb.append(str.charAt(number));
        }
        return sb.toString();
    }



}

相关标签: Java随机数