范围在一定范围内?

时间:2017-08-19 22:01:32

标签: java c# spring math range

假设我的范围是1到1000.如何在该范围内获得不超过x大小的随机子范围?

我尝试了以下内容:

int newMin = getRandomInt(1,1000);
newMax = newMin + rangeSize;

但是失败了,因为它可能会超过最大范围。

因此,如果起始范围为1到1000且子范围大小指定为大小100,则新范围可以是200-300。

感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

也许尝试类似的事情:

int newMin = getRandomInt(1,1000),
newMax = getRandomInt(newMin, 1000);

你的范围是从newMin到newMax。

编辑:所以听起来我们有一个名为rangeSize的东西。上述答案并不能保证获得具有确切rangeSize的新子范围。所以这是编辑过的代码:

int newMin = getRandomInt(1, 1000 - rangeSize),
newMax = newMin + rangeSize;