使用 Set Seed 解决 Java 中重复生成随机数的问题
问题描述:
在实现随机数生成器时,开发者可能会遇到这样的情况:调用随机数方法,尽管设置了种子,但仍不断生成相同的输出。
代码示例:
考虑以下代码片段:
多次调用numbers.random(10)时,它会持续返回相同的数字,例如5,而不是不同的输出。
解决方案:
为了确保使用预定义种子生成唯一的随机数,Random() 实例必须在整个类中共享。这可以通过以下代码修改来实现:
通过在类构造函数中初始化 randnum 实例,它成为类中所有方法都可以访问的共享资源。这确保了种子仅设置一次,并且对 random() 方法的后续调用会生成不同的随机数。
以上是为什么在Java随机数生成器中设置种子会导致重复输出?的详细内容。更多信息请关注PHP中文网其他相关文章!