当前位置: 首页 > 面试题库 >

Java的RNG(使用种子)是否独立于平台?

凌和颂
2023-03-14
问题内容

提前道歉,提出一个(看似显而易见的)问题。我没有在线找到答案,所以我想问一下:

Java的Util.Random是否独立于平台?

例如,是否new Random(50)将在* nix和Windows系统中产生完全相同的随机数序列?


问题答案:

从文档:

如果Random使用相同的种子创建了两个实例,并且对每个实例进行了相同的方法调用序列,则它们将生成并返回相同的数字序列。为了保证此属性,将为class指定特定的算法RandomRandom为了实现Java代码的绝对可移植性,Java
实现必须对类使用此处显示的所有算法。



 类似资料:
  • 如何使用gcc 7.2.0在64位DebianLinux上的C中创建两个独立的随机数生成器(无需加密安全)?两个RNG中的一个应该使用,而另一个应该使用命令行参数初始化以创建可重复的实验。下面的示例将为同一个RNG播种两个不同的值,这将如何工作有两个不同的可能的调用? 这样做的目的是,我使用一个RNG动态生成问题实例,在所有实验运行中都应该是相同的,因此在所有程序重新启动时遵循相同的种子。第二个R

  • 我对Java RNG的工作方式很感兴趣。我读到过使用方法和以及两个值非常容易。我对使用获得种子感兴趣,该种子知道的值。 由于通常使用并重复使用,直到为bits所以val==bits(mod n) 我已经测试了一个bruteforce来测试所有可能的数字对,这些数字与初始的数字是全等的,但这对计算机来说是非常长和困难的。 关于如何以有效的方式获得种子,还有其他的想法吗?

  • 问题内容: 我有一些通过 Runtime.getRuntime.exec(String) 运行命令的代码,它可以在Windows上运行。当我将代码移至Linux时,它崩溃了,并且解决该问题的唯一方法是切换到 exec(String []) 版本。如果我这样处理,代码在Windows和Linux上是否可以相同,还是应该在Windows上使用exec(String)而在Linux上使用exec(Str

  • 问题内容: 在python中,我有变量和。我想把它们串联起来获得。但是在Windows下,我应该使用和用于POSIX 。 如何使该平台独立? 问题答案: 您要为此使用os.path.join()。 使用此方法而不是使用字符串连接等方法的优势在于,它知道各种特定于OS的问题,例如路径分隔符。例子: 在 Windows 7下 : 在 Linux下 : 所述OS模块包含目录,路径操纵并找出OS特定信息许

  • 问题内容: 我想在nodejs中建立一个代码编辑器。有一些选项,例如使用Express Server显示编辑器并在后端执行代码。但这需要浏览器。因此,我正在寻找可以为Windows平台提供独立GUI的节点模块。 问题答案: 有两种不同的选择,具体取决于您要如何进行。 选项1: 使用QT或GTK绑定之类的东西来制作更传统的GUI应用程序。这些选项通常只是Node绑定到GTK和QT公开的C / C +

  • 即使 M600 与手机断开连接,M600 的部分基本功能仍可继续使用。 在独立模式下,您能: 了解时间、查看日期。 使用 Polar 应用程式进行训练。 如果您的智能手表已经接到Wi-Fi网络,请使用应用程式商店。 使用码表。 使用计时器。 查看您当日的时间表。 设置闹钟。 查看您的步数。 查看您的心率。 更改手表表面。 使用飞行模式。