假设我有两个 UUID 实例:
uuid1 = UUID.randomUUID();
uuid2 = UUID.randomUUID();
如果这两个比较使得 uuid1
小于 uuid2
即,
uuid1.compareTo(uuid2) // -1
他们的字符串表示会比较给出相同的结果是否总是正确的,即
uuid1.toString().compareTo(uuid2.toString()) // -1 ????
最佳答案
简而言之,没有。这是断言不成立的两个 UUID 的快速反例:
- b230f7ab-9420-4a3e-a684-284c609e76a5
- 76d1f3c9-fc72-4f1a-ab48-28a858d760c5
使用来自 UUID 的 compareTo 得到 -1,而来自 String 的 compareTo 结果为 43。
关于Java UUID 字符串表示自然排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2364241/