java.util.UUID
概述
A class that represents an immutable universally unique identifier (UUID). 一个 不可变的 通用的唯一标识符 的class
A UUID represents a 128-bit value. 一个uuid代表一个128位的值
UUID的版本
UUID
有多个版本,每个版本有不同的生成方式。常用的版本包括:
- Version 1 (Time-based):基于时间戳和MAC地址生成。
- Version 3 (Name-based):基于命名空间和名字生成。
- UUID.nameUUIDFromBytes("Some unique string".getBytes()); // Static factory to retrieve a type 3 (name based) {@code UUID} based on the specified byte array.
- Version 4 (Randomly generated):完全随机生成。
- UUID.randomUUID() // Static factory to retrieve a type 4 (pseudo randomly generated) UUID.
- Version 5 (Name-based):与Version 3类似,但使用SHA-1算法。
重复概率
UUID有几种不同的版本,其中最常见的是版本4(随机生成)。版本4的UUID是通过伪随机数生成器创建的,其格式为8-4-4-4-12的32位十六进制数,例如550e8400-e29b-41d4-a716-446655440000
。
对于版本4的UUID,每个部分都是随机生成的,所以理论上任何两个UUID完全相同的概率非常低。每个UUID包含122位随机数据,这意味着每个UUID有21222122种可能的状态。
在实际应用中,使用Java的UUID生成器生成的版本4 UUID几乎不会出现重复,除非你在一天之内生成极其大量的UUID(如每天生成数十亿个),并且持续很长一段时间(几年甚至几十年)。即便如此,重复的概率仍然非常小。在大多数情况下,你无需担心UUID的重复问题。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
2020-08-28 SQL---表内容查询
2020-08-28 SQL---修改表