java – 在指定范围内生成随机唯一BigIntegers?

我是新手使用BigInteger,所以我正在努力阅读文档.不过我还是很困惑.我需要在2 ^ 70和2 ^ 80的范围之间生成500个随机整数,我不知道如何为BigIntegers设置范围.

我收到了可能的重复消息,所以我想我应该补充一点,我已经看过这个中的解决方案但仍然不明白如何解决我的问题:How to generate a random BigInteger value in Java?

最佳答案 在0到2 ^ n – 1之间有一个
built-in method to generate a random BigInteger.

您可以在循环中使用它来生成最多2 ^ 80的数字.

数字低于2 ^ 70的可能性非常小(约0.1%).如果发生这种情况(并且可能很好地进行500次迭代),只需绘制另一个.

这将为您提供2 ^ 70和2 ^ 80之间随机数的均匀分布.

数字重复的几率几乎不存在.如果您觉得无法忽略,请检查以前的数字是否有重复项,然后重新绘制.

点赞