JAVA 16位ID生成工具類含16位不重複的隨機數數字+大小寫
阿新 • • 發佈:2020-02-07
本文介紹了Java隨機數,分享給大家,也順便做個筆記
package com.fty.util; import java.security.SecureRandom; import java.util.Random; import java.util.concurrent.ThreadLocalRandom; public class UtilId { /** * 生成16位不重複的隨機數,含數字+大小寫 * @return */ public static String getGUID() { StringBuilder uid = new StringBuilder(); //產生16位的強隨機數 Random rd = new SecureRandom(); for (int i = 0; i < 16; i++) { //產生0-2的3位隨機數 int type = rd.nextInt(3); switch (type){ case 0: //0-9的隨機數 uid.append(rd.nextInt(10)); /*int random = ThreadLocalRandom.current().ints(0,10) .distinct().limit(1).findFirst().getAsInt();*/ break; case 1: //ASCII在65-90之間為大寫,獲取大寫隨機 uid.append((char)(rd.nextInt(25)+65)); break; case 2: //ASCII在97-122之間為小寫,獲取小寫隨機 uid.append((char)(rd.nextInt(25)+97)); break; default: break; } } return uid.toString(); } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。