在java中获取特定范围内的随机数

在java中获取特定范围内的随机数,java,random,Java,Random,可能重复: 我想使用 java.util.Random(arg); 唯一的问题是,该方法只能接受一个参数,因此数字始终在0和我的参数之间。有没有办法生成200到500之间的随机数 首先,您必须创建一个随机对象,例如: Random rand = new Random(seed); int random_integer = rand.nextInt(upperbound-lowerbound) + lowerbound; Random r = new Random(); 然后,如果需要in

可能重复:

我想使用

java.util.Random(arg);

唯一的问题是,该方法只能接受一个参数,因此数字始终在0和我的参数之间。有没有办法生成200到500之间的随机数

首先,您必须创建一个随机对象,例如:

Random rand = new Random(seed);
int random_integer = rand.nextInt(upperbound-lowerbound) + lowerbound;
Random r = new Random();
然后,如果需要int值,应该使用
nextInt
int myValue=r.nextInt(最大值)

现在,如果您希望在一段时间内完成,只需执行以下操作:

 int myValue = r.nextInt(max-offset)+offset;
就你而言:

 int myValue = r.nextInt(300)+200;
您应该查看以下文档:


我想你误解了随机的工作原理。它不返回整数,而是返回一个随机对象,参数是PRNG的种子值

Random rnd = new Random(seed);
int myRandomValue = 200 + rnd.nextInt(300);

传递给构造函数的参数是种子,而不是绑定

要获得介于200和500之间的数字,请尝试以下操作:

Random random = new Random(); // or new Random(someSeed);
int value = 200 + random.nextInt(300);

有多不清楚?你有一个上限。你想让它被一个数字抵消。加上这个数字。使用
+
。比如说,
x+200
。您是否注意到,当您创建问题SO时,会显示可能类似问题的列表,例如,这样您可以更快地找到答案?非常感谢!它工作得很好,你的回答对我来说是最有建设性和最有用的:)@imulsion Modulo它当然是错的;没有返回随机数的
Random
构造函数。除了给出一个加法的例子外,其他三个答案都正确地使用了这个类;这仍然是最具建设性的回答