久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

在JAVA中生成UUID字符串的有效方法(不帶破折號的UUID.randomUUID()。toString())

瀏覽:146日期:2024-04-26 16:09:16
如何解決在JAVA中生成UUID字符串的有效方法(不帶破折號的UUID.randomUUID()。toString())?

最終基于UUID.java實現編寫了自己的東西。請注意,我 ,而是以我能想到的最有效的方式 隨機的32字節十六進制字符串。

實作

import java.security.SecureRandom;import java.util.UUID;public class RandomUtil { // Maxim: copied from UUID implementation :) private static volatile SecureRandom numberGenerator = null; private static final long MSB = 0x8000000000000000L; public static String unique() {SecureRandom ng = numberGenerator;if (ng == null) { numberGenerator = ng = new SecureRandom();}return Long.toHexString(MSB | ng.nextLong()) + Long.toHexString(MSB | ng.nextLong()); } }用法

RandomUtil.unique()測驗

我已經測試過一些輸入,以確保其正常工作:

public static void main(String[] args) { System.out.println(UUID.randomUUID().toString()); System.out.println(RandomUtil.unique()); System.out.println(); System.out.println(Long.toHexString(0x8000000000000000L |21)); System.out.println(Long.toBinaryString(0x8000000000000000L |21)); System.out.println(Long.toHexString(Long.MAX_VALUE + 1));}解決方法

我想要一個高效的實用程序來生成唯一的字節序列。UUID是一個很好的候選人,但是會UUID.randomUUID().toString()生成類似的東西44e128a5-ac7a-4c9a-be4c-224b6bf81b20,但是我更喜歡無破折號的字符串。

我正在尋找一種僅從字母數字字符(無破折號或任何其他特殊符號)生成隨機字符串的有效方法。

標簽: java
相關文章:
主站蜘蛛池模板: 娄底市| 桂东县| 拜泉县| 宁城县| 吉林市| 揭东县| 琼结县| 水富县| 平泉县| 弋阳县| 基隆市| 大兴区| 义乌市| 昌宁县| 民权县| 成都市| 佳木斯市| 松滋市| 长治市| 嵊州市| 离岛区| 安康市| 威远县| 临泽县| 灵石县| 静宁县| 南和县| 安多县| 五常市| 贵定县| 大同县| 罗定市| 厦门市| 桂阳县| 珲春市| 宜城市| 蓬溪县| 凯里市| 西乌珠穆沁旗| 柘荣县| 闻喜县|