java - 在不传递种子的情况下获取随机对象的种子?

标签 java c# random

随机对象是否总是包含种子,即使没有给定种子?如果是这样,是否有可能得到这个种子?

动机: 我希望我的程序是随机的,但我希望能够随时重现它。我目前所做的是生成一个随机数,将其存储并将其作为种子放入我用于实际程序的另一个 Random 对象中。如果我想复制任何东西,我可以通过这种方式查找生成的种子。

我想了解 JavaC#,因为这些是我的主要语言,这个问题让我在使用这两种语言时遇到过几次。

最佳答案

如果您不为随机构造函数提供种子,系统会隐式为您生成种子。要设置种子并在代码的其他位置再次使用它或重现任何内容,请尝试以下操作:

long seed = System.currentTimeMillis();
Random rand = new Random(seed);
System.out.println(seed);

关于java - 在不传递种子的情况下获取随机对象的种子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24221552/

相关文章:

java - Hibernate 中具有两个多对一键的复合键

c# - 在循环遍历集合时订阅闭包中的事件会导致订阅事件的最后一项

c# - 无法加载文件或程序集 'EntityFramework' 或其依赖项之一。程序集可能已被篡改

java - 如何为我的数组创建 insertInOrder 方法

java - 适用于 Java 的 Amazon S3 SDK - 配置 TLSv1.2

c# - 我如何从 SqlDataSource asp.net 中的多个表中进行选择

linux - 让linux缓冲/dev/random

c++ - 如何在 C++ 中生成随机数?

javascript - 如何随机生成一个介于 -0.5 和 0.5 之间的数字?

java - Spring Boot 单元测试中的配置 - 无法加载 ApplicationContext