如何在java中生成非常大的随机数?我在说10000数字的东西?我知道我们必须使用BigInteger,但我们怎么能做到这一点?做这种事最有效的方法是什么?请提供一个小例子。谢谢。生成非常大的随机数java
回答
那么,一种方法是去Random.org并下载一个二进制随机文件。这些文件是从大气噪音中产生的,所以非常随意。我在我的国际象棋引擎中使用Zobrist键。
或者你可以去
BigInteger b = new BigInteger(256, new Random());
它会给你想要的东西。在这个例子中,一个由256位组成的BigInteger。
联合Random.nextBytes(byte[])
与BigInteger(byte[])
。
import java.util.*;
import java.math.*;
class Test{
public static void main(String[]_){
int n = 16;
Random r = new Random();
byte[] b = new byte[n];
r.nextBytes(b);
BigInteger i = new BigInteger(b);
System.out.println(i);
}
}
+1:可能使用mod()来获取特定数量的数字。 –
你能解释一下这是如何工作的吗?我对字节部分或多或少感到困惑。谢谢 –
您分配一个字节数组,nextBytes用随机值填充它,然后BigInteger被初始化为由该字节序列定义的二进制数。但我认为雅科的解决方案更加简洁。 – Vlad
- 1. Java生成非重复的随机数
- 2. 如何在C++中生成非常大的随机数
- 3. 在C++中生成非常大的随机数
- 4. 大随机数生成
- 5. Android - 生成非重复的随机数
- 6. 生成非重复的随机数
- 7. 非常简单的随机数生成器编译问题
- 8. 如何在Ruby中生成一个非常大的随机整数?
- 9. 非均匀随机数生成器
- 10. 如何生成大的随机数C
- 11. 生成大小相同的随机数
- 12. 生成可验证的随机数 - Java
- 13. Java中的并发随机数生成
- 14. Java中的随机数生成器
- 15. 生成唯一的随机数字JAVA
- 16. C与Java中的随机数生成
- 17. 生成随机数:计算随机生成的x次数
- 18. 随机数生成
- 19. 生成随机数
- 20. 生成随机数
- 21. 生成随机数
- 22. 生成随机数
- 23. 随机数生成
- 24. Java - 生成随机数,限制生成的数量
- 25. 随机数生成机制
- 26. 非常大的数字的数字可逆伪随机数发生器
- 27. java:在循环中生成随机数
- 28. 使用随机数生成器Java
- 29. 如何在java中生成随机数
- 30. 生成随机数序列与在Java
+1。这是文档中的四个构造函数,我没有看到:D。 – Vlad
发生在我们身上! –