题
我想编写一个实用工具,将提供给我在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++;
}
}
不隶属于 StackOverflow