64位非序列的唯一ID

时间:2014-05-07 10:35:06

标签: java uniqueidentifier

我需要一个独特的64位ID生成器吗? 我知道UUID是128位但如果在java中存在任何版本的id生成器,请将它告诉我。 ids不是序列非常重要。

2 个答案:

答案 0 :(得分:3)

Java中UUID的最不重要的一半是非常独特的,这将为您提供64位数字。

UUID.randomUUID().getLeastSignificantBits()

另见:Likelihood of collision using most significant bits of a UUID in Java

正如评论中所指出的那样,这个数字不能保证唯一,但重复不太可能

答案 1 :(得分:0)

你可以在正常计数器上使用Blowfish加密,或者生成UUID4和xor第一个和最后16个字节。