Java random在我设置种子时总是返回相同的数字?
我需要有关正在创建的随机数生成器的帮助。我的代码如下(在一个称为数字的类中):
public int random(int i){ Random randnum = new Random();
randnum.setSeed(123456789);
return randnum.nextInt(i);
}
当我从另一个类调用此方法(以生成随机数)时,它总是返回相同的数字。例如,如果我要这样做:
System.out.println(numbers.random(10));System.out.print(numbers.random(10));
它总是打印相同的数字,例如55。我必须怎么做才能打印两个不同的数字,例如5 8
我必须设置种子。
谢谢
回答:
你需要Random()
在整个类中共享实例:
public class Numbers { Random randnum;
public Numbers() {
randnum = new Random();
randnum.setSeed(123456789);
}
public int random(int i){
return randnum.nextInt(i);
}
}
以上是 Java random在我设置种子时总是返回相同的数字? 的全部内容, 来源链接: utcz.com/qa/427794.html