假设我有以下代码
UUID u1 = UUID.randomUUID();
UUID u2 = UUID.randomUUID();
我保证u2将永远大于u1,因为u2是后来的吗?
(即)u2.compareTo(u1)它总是1?
答案 0 :(得分:4)
文档中没有任何内容(参见Oracle UUID javadoc)。所以我相信你不能指望你的假设成立。
答案 1 :(得分:3)
没有。 UUID.randomUUID()不保证任何订购。
这也是你可以通过以下方式非常轻松地测试自己的东西:
UUID previousUuid = UUID.randomUUID();
for (int i = 0; i < 10; i++) {
UUID uuid = UUID.randomUUID();
System.out.println(uuid.compareTo(previousUuid));
previousUuid = uuid;
}