[英]How can I assemble bits into a long to create a unique ID?
我想編寫一個實用程序,它將在Java中為我提供一個相對唯一的ID。 很簡單,例如時間戳記中的x位和隨機數中的y位。
因此,我將如何實現以下方法:
long getUniqueID()
{
long timestamp = System.currentTimeMillis();
long random = some random long
...
return id;
}
獎金
對我可以用來形成ID的其他易於獲得的信息有什么建議嗎?
注意:我知道GUID,並且我知道Java具有UUID類,但是我不想要128位長的東西。
只需剪掉不需要的部分:
return java.util.UUID.randomUUID().getLeastSignificantBits();
如果在同一個JVM中唯一就足夠了,那么應該執行類似的操作。
public class UniqueID {
static long current= System.currentTimeMillis();
static public synchronized long get(){
return current++;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.