java.util.UUID.randomUUID().toString() length 是否始终等于 36?
是的!!是的。
A 实际上是一个 128 位值(长度为 2)。要表示128位到十六进制字符串中,将有char(每个char的长度为4bit)。在字符串格式中,它还包含4(),这就是为什么长度为36。UUID
128/4=32
-
例:54947df8-0e9e-4471-a2f9-9af509fb5889
32 个十六进制字符 + 4 个连字符字符 = 36 个字符。因此,长度将始终相同。
更新:
我不知道类型4在这种情况下意味着什么。?
仅供参考:有几种方法可以生成UUID。此处类型 4 表示此 uuid 是使用随机数或伪随机数生成的。来自维基 - Universally_unique_identifier#版本:
版本
对于变体1和2,标准中定义了五个“版本”,每个版本在特定用例中可能比其他版本更合适。版本由字符串表示中的 M 表示。
版本 1UUID由时间和节点ID(通常是MAC地址)生成;
版本 2UUID由标识符(通常是组或用户ID),时间和节点ID生成;
版本 3 和 5 生成通过散列命名空间标识符和名称生成的确定性 UUID;
版本 4 UUID 是使用随机数或伪随机数生成的。