1
4
创建唯一随机数块的标准方法是首先按顺序(例如,在数组中)创建数字,然后对其进行随机排序。 你在选择洗牌算法时需要小心;我听说了 Fisher-Yates 非常好。 |
2
1
如果是一次性运行,只需使用命令行选项增加堆
|
3
1
Q1.我们可以生成8位唯一的9-10百万数字字符串吗? 是的,您可以使用10位数字1,2,3,4,5,6,7,8,9,0生成10000000个8位唯一数字字符串 若你们为所有可能的组合编写了正确的逻辑,你们不会得到任何重复,但为了安全起见,你们可以使用set。 当您得到java.lang.OutOfMemoryError错误时,这是因为您生成了这么多数字并将其保存在内存中。解决方法是生成一些小的数字块并将其保存到数据库中,然后清除列表,再次填充下一个数字块并保持重复,直到将所有数字保存到数据库。 Q2.如何在一次程序运行中生成900万到1000万个唯一的“仅数字”字符串? 下面是一个组合代码,您可以使用它来实现您的目标
|
4
1
我只是简单地增加了vm内存大小,并运行应用程序生成了900万张优惠券。感谢大家有兴趣回答这个问题。 |
5
0
您可以将它们存储在数据库中,并在存储它们的列上放置索引(如果出现DuplicateKeyException,则使用一个唯一的约束和一个要重试的循环)。更好的是,您可以编写一个存储过程来执行它,并直接对数据库进行操作。我在为URL生成短代码时使用这种方法(这可能导致重复)。如果您的时间要求不严格,这是一个可行的选择。 |
Alberto · 获取存储的mifare标记的十六进制字符串 7 年前 |
Keegan Smith · 独特元素的价值 7 年前 |
Ayed · 模型字段唯一性验证错误处理 8 年前 |
artganify · 生成简短的唯一标识符[已关闭] 8 年前 |
CJK · 大型数据集的唯一计数公式 9 年前 |
Sertan Pekel · SQL唯一标识符哈希字节不匹配 9 年前 |
vvra · 生成900万唯一随机数字字符串 10 年前 |
punkouter · 如何在lambda中创建标识列? 11 年前 |
Anoop Vaidya · 查找Mac OSX序列号 11 年前 |