字符串随机生成工具类
生活随笔
收集整理的這篇文章主要介紹了
字符串随机生成工具类
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
package com.gblfy.util;import org.springframework.stereotype.Component;import java.util.ArrayList;
import java.util.Arrays;
import java.util.Random;/*** 字符隨機生成類*/
@Component
public class RandomStrUtil {/*** 隨機產生類型枚舉*/public static enum TYPE {/*** 小字符型*/LETTER,/*** 大寫字符型*/CAPITAL,/*** 數(shù)字型*/NUMBER,/*** 大+小字符 型*/LETTER_CAPITAL,/*** 小字符+數(shù)字 型*/LETTER_NUMBER,/*** 大寫字符+數(shù)字*/CAPITAL_NUMBER,/*** 大+小字符+數(shù)字 型*/LETTER_CAPITAL_NUMBER,}private static String[] lowercase = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o","p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};private static String[] capital = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P","Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};private static String[] number = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "0"};/*** 靜態(tài)隨機數(shù)*/private static Random random = new Random();/*** 獲取隨機組合碼** @param num 位數(shù)* @param type 類型* @type <br>小寫字符型 LETTER,* <br>大寫字符型 CAPITAL,* <br>數(shù)字型 NUMBER,* <br>大+小字符型 LETTER_CAPITAL,* <br>小字符+數(shù)字 型 LETTER_NUMBER,* <br>大字符+數(shù)字 型 CAPITAL_NUMBER,* <br>大+小字符+數(shù)字 型 LETTER_CAPITAL_NUMBER,*/public static String getRandom(int num, TYPE type) {ArrayList<String> temp = new ArrayList<String>();StringBuffer code = new StringBuffer();switch (type) {case LETTER:temp.addAll(Arrays.asList(lowercase));break;case CAPITAL:temp.addAll(Arrays.asList(capital));break;case NUMBER:temp.addAll(Arrays.asList(number));break;case LETTER_CAPITAL:temp.addAll(Arrays.asList(lowercase));temp.addAll(Arrays.asList(capital));break;case LETTER_NUMBER:temp.addAll(Arrays.asList(lowercase));temp.addAll(Arrays.asList(number));break;case CAPITAL_NUMBER:temp.addAll(Arrays.asList(capital));temp.addAll(Arrays.asList(number));break;case LETTER_CAPITAL_NUMBER:temp.addAll(Arrays.asList(lowercase));temp.addAll(Arrays.asList(capital));temp.addAll(Arrays.asList(number));break;}for (int i = 0; i < num; i++) {code.append(temp.get(random.nextInt(temp.size())));}return code.toString();}//測試public static void main(String[] args) {System.out.println(RandomStrUtil.getRandom(64, RandomStrUtil.TYPE.LETTER_CAPITAL));}
}
總結
以上是生活随笔為你收集整理的字符串随机生成工具类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TortoiseGit 基础5部曲
- 下一篇: Mybatis-plus批量插入、批量修