我需要在Java中创建一些唯一文件,我计划使用UUID.randomUUID生成它们的名称.有没有机会为此发生碰撞?我应该做一些像bellow os我不应该担心的事情吗?
Integer attemptsToGenerateUUID = 1;
while (true) {
UUID fileUUID = UUID.randomUUID();
if (fileDoesNotExistwith this UUID name) {
save file;
break;
}
attemptsToGenerateUUID += 1;
if (attemptsToGenerateUUID > 64) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
Ósc*_*pez 93
根据维基百科,关于随机UUID中重复的概率:
只有在接下来的100年中每秒产生10亿UUID之后,仅创建一个副本的概率大约为50%.或者,换句话说,如果地球上的每个人拥有6亿UUID,则一次重复的概率约为50%.
我想同样的推理也适用于Java的UUID实现.所以不,你不应该担心这一点.
| 归档时间: |
|
| 查看次数: |
35546 次 |
| 最近记录: |