java.util.UUID.randomUUID()。toString()长度

java.util.UUID.randomUUID()。toString()的长度是否始终等于36?

我找不到有关的信息。这里只说以下几点:

公共静态UUID

randomUUID()静态工厂,用于检索类型4(伪随机生成的)UUID。使用加密强度高的伪随机数生成器生成UUID。返回:随机生成的UUID

type 4什么也没告诉我。我不知道类型4在这种情况下意味着什么。

回答:

java.util.UUID.randomUUID()。toString()的长度是否始终等于36?

它是。

UUID实际上是一个128位的值(2长)。为了将128位表示为十六进制字符串,将有一个128/4=32char(每个char为4位长)。字符串格式还包含4(-),这就是长度为36的原因。

回答:

32个十六进制字符+ 4个连字符= 36个字符。因此长度将始终相同。


更新:

我不知道第4种情况是什么意思?

仅供参考:有几种生成UUID的方法。在这里,类型4表示此uuid是使用随机数或伪随机数生成的。从Wiki-

Universally_unique_identifier#Versions:

版本号

对于版本1和2,标准中定义了五个“版本”,在特定的用例中,每个版本可能比其他版本更合适。版本由字符串表示中的M表示。

UUID是根据时间和节点ID(通常是MAC地址)生成的;

UUID由标识符(通常是组或用户ID),时间和节点ID生成;

通过对名称空间标识符和名称进行哈希处理来生成确定性UUID。

和 的UUID使用随机或伪随机数生成。

以上是 java.util.UUID.randomUUID()。toString()长度 的全部内容, 来源链接: utcz.com/qa/435040.html

回到顶部