Java:唯一的10位数字ID

Java:唯一的10位数字ID,第1张

Java:唯一的10位数字ID

这是对您的一个小改进,但应该具有d性。

本质上,除非当前的时间自上次ID以来一直未勾选,否则我们使用当前时间(以毫秒为单位),在这种情况下,我们只返回return

last + 1

private static final long LIMIT = 10000000000L;private static long last = 0;public static long getID() {  // 10 digits.  long id = System.currentTimeMillis() % LIMIT;  if ( id <= last ) {    id = (last + 1) % LIMIT;  }  return last = id;}

因为它应该以相对较短的周期速率管理高达每秒1000次。要延长循环速率(但要缩短分辨率),可以使用

(System.currentTimeMillis() /10) % 10000000000L
(System.currentTimeMillis() / 100) % 10000000000L



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5489793.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存