import java.util.UUID;
public class UUIDUtil {
/**
* 1111
*
* all 1 in 16 hexadecimal
*/
private static final long hexMod = 15L;
/**
* All possible chars for representing a number as a hex String
*/
private static final char[] digits = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
public static String toHexString(UUID uuid) {
char[] array = new char[32];
long leastBits = uuid.getLeastSignificantBits();
for (int i = 31; i >= 16; i--) {
array[i] = digits[(int) (leastBits & hexMod)];
leastBits >>>= 4;
}
long mostBits = uuid.getMostSignificantBits();
for (int i = 15; i >= 0; i--) {
array[i] = digits[(int) (mostBits & hexMod)];
mostBits >>>= 4;
}
return new String(array);
}
public static String randomUUID() {
return toHexString(UUID.randomUUID());
}
}
算法背景:
标准UUID的toString返回的字符串带有短横线,
UUID.randomUUID().toString();
引用
8b4e04f3-f68a-48c4-8c18-88c1f84530e5
使用replace方式去除短横线的效率不高。
UUID.randomUUID().toString().replace("-", "");
引用
8b4e04f3f68a48c48c1888c1f84530e5
分享到:
相关推荐
Mysql中存储UUID去除横线的方法.doc
1. 去除横线:通过MySQL的REPLACE()函数,将UUID字符串中的短横线替换为空字符串,这样得到一个没有分隔符的UUID。例如: ```sql SELECT REPLACE('05ba463f-1dab-471f-81c7-58e0b06f35f0', '-', ''); ``` 结果为...
uuid 默认生成带横线的 uuid -s 生成不带横线的uuid
首先,我们可以从`UUID`类的`toString()`方法生成的128位UUID字符串开始,然后去除其中的短横线。以下是一个简单的示例: ```java import java.util.UUID; public class UUIDGenerator { public static String ...
为了提高效率,开发者有时会寻求更高效的解决方案,比如`fast-uuid`。 `fast-uuid`是一个专门为Java设计的高性能UUID处理库,它的目标是优化UUID的生成和解析过程,减少CPU和内存的消耗,从而在高并发场景下提供更...
短8位uuid 用于兑换码,不重复,,本人用很好用,,分享给大家
标题“uuid.rar_C获得UUID_UUID C_c生成uuid_c语言生成uuid_uuid”表明这是一个关于使用C语言实现UUID生成的资源包。这个压缩包可能包含了一个C语言编写的程序或库,可以用来在Windows平台上(通过VC6编译器)生成...
UUID(Universally Unique Identifier)是用于唯一标识信息的一种标准格式,通常由32个十六进制数字组成,分为五组,用短横线分隔。在JavaScript中,生成UUID的需求时常出现,例如在生成临时ID、数据库记录的主键...
这里的查询首先通过`NEWID()`函数生成一个GUID,然后通过`CAST`将其转换为`VARCHAR(36)`类型,最后使用`SUBSTRING`函数去除短横线,得到标准的UUID格式。 #### Oracle数据库生成UUID Oracle数据库也有自己的方式来...
同时,16位UUID也使得蓝牙技术中的设备管理变得更加方便和高效。 在蓝牙技术中,16位UUID的管理是由蓝牙SIG(Bluetooth Special Interest Group)负责的。蓝牙SIG是一个非营利组织,旨在推广和发展蓝牙技术。蓝牙...
为了得到32位的无序ID,我们可以去除短横线并转换为32进制表示。 以下是一个简单的Java代码示例,展示如何生成32位无序的UUID: ```java import java.util.UUID; public class UUIDGenerator { public static ...
java 获取 UUID 与 UUID 校验详解 Java 获取 UUID 是一个非常常见的操作,UUID(Universally Unique Identifier,全球唯一标识符)是一种软件建筑中用于标识信息的标识符。UUID 的主要用途是为了在分布式系统中生成...
标题中的"PB生成UUID"指的是...理解如何在PB中生成和使用UUID对于进行高效的网络通信和数据存储非常重要。通过结合PB的序列化能力,UUID可以作为跨平台、跨语言的数据交换中的通用标识符,极大地简化了系统设计和开发。
然而,需要注意的是,虽然Math.uuid.js生成的UUID在大多数情况下都能满足唯一性需求,但在极端情况下(如短时间内生成大量UUID),仍有可能出现重复。这是因为JavaScript的随机数生成器有一定的局限性,特别是在并发...
可能包含了如`uuid_generate()`用于生成新的UUID,`uuid_parse()`解析字符串形式的UUID,以及`uuid_compare()`比较两个UUID是否相同等函数。这些函数的实现通常基于RFC 4122,这是一个定义UUID生成和格式的标准。 ...
总的来说,“uuid.zip_uuid”提供的工具是一个高效、可靠的UUID生成器,适应分布式环境,兼顾性能与唯一性。通过分析cpp和h文件,我们可以深入理解其内部实现机制,为自己的项目选择合适的UUID生成策略。
【ThinkPad System UUID1.82】是一款专为联想ThinkPad笔记本电脑设计的系统UUID添加工具,主要用于在制作U盘启动盘时解决特定问题。UUID(Universally Unique Identifier)是全球唯一的标识符,用于区分不同的计算机...
在IT领域,尤其是在Web开发中,唯一标识符(UUID)是一种极为重要的技术,它用于确保在分布式网络环境中数据对象的唯一性。JavaScript作为一种广泛应用于Web前端与后端开发的脚本语言,提供了多种方法来生成UUID,...
生成的UUID字符串通常形如“550e8400-e29b-41d4-a716-446655440000”,由五组32位的十六进制数字组成,中间用短横线分隔。 然而,UUID作为IMEI的替代存在一些差异。IMEI是硬件级别的标识,与手机硬件绑定,即使用户...