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

Java生成范围内的随机双精度

危阳
2023-03-14
问题内容

我有两个如下的双打

double min = 100;
double max = 101;

使用随机生成器,我需要在min和max范围之间创建一个双精度值。

Random r = new Random();
r.nextDouble();

但是这里没有什么可以指定范围的。


问题答案:

在Java 7发行之前曾问过这个问题,但是现在,还有另一种使用Java 7(及更高版本)API的可能方式:

double random = ThreadLocalRandom.current().nextDouble(min, max);

nextDouble返回介于最小值(包含)和最大值(不含)之间的伪随机双精度值。范围不一定是int,可以是double



 类似资料:
  • 问题内容: 我正在尝试生成一个随机双精度值,但不包括它的下限和上限(下限,上限)。我已经看到了很多有关生成数字的问题,包括从数字的下限到上限,但不包括数字的上限(下限,上限),但是由于没有解决此问题,因此他们没有回答我的问题。 我已经为这个问题提出了两个“解决方案”,但都不是很满意。 第一个“解决方案” 尽管这几乎每次都会在第一次尝试时给出有效的结果,但它似乎不一致且笨拙,并且如果rng经常返回0

  • 我试图在两者之间生成一个随机的双倍,但不包括它的下界和上界(lower,upper)。我见过很多关于从生成一个数字的问题,包括它的下界,但不包括它的上界[lower,uper),但它们没有回答我的问题,因为它们没有解决这个问题。 我想出了两个“解决方案”来解决这个问题,但对任何一个都不满意。 虽然这几乎每次都能在第一次尝试时给出一个有效的结果,但它似乎不一致且笨拙,而且在rng返回0.0的可能性很

  • 问题内容: 我看过很多文章,解释了这个问题,但是他们都使用整数值,老实说,我并没有完全理解它,所以这个问题: 我正在尝试在Java中生成从(-1554900.101)到(52952058699.3098)范围的随机数,我想知道是否有人可以向我解释这一点,因为我真的很想理解它。 我的想法:这是正确的方法吗?1)生成一个在我指定范围内的随机整数2)将生成的数除以pi以得到float / double随

  • 本文向大家介绍Java 生成给定范围内的随机数,包括了Java 生成给定范围内的随机数的使用技巧和注意事项,需要的朋友参考一下 为了生成给定范围内的随机数,Java代码如下- 示例 输出结果 名为Demo的类包含主要功能。在这里,将创建一个新的随机实例以及一个新的数组列表。创建随机元素并将其分配给变量。使用add函数将这些随机变量添加到列表中。这些元素显示在控制台上。

  • 问题内容: 我需要生成一个范围内的随机唯一数字吗?怎么做 ? 我可以通过生成随机数 我知道这段代码不好,所以我需要一个更好的优化版本代码!帮帮我 ! 例如:如果我需要在1到15之间生成3个数字,它们应该像5、9、1而不是3,1,2 [具有1-3(我要生成的数字)] 问题答案: 以随机顺序排列数字范围的数组: 包装功能: 例: 结果:

  • 我想生成1到4范围内的随机数,4包括。 以下是我的代码: 然而,我在循环中运行上述代码,不希望重复随机数。现在发生的事情通常是: 作为我的输出。 在这里,虽然数字在范围(1-4)内是随机的,但在前3次迭代中经常像数字“1”一样重复。 我正在寻找的是一种在循环中获得非重复随机数的方法。我知道的一个简单的方法是在当前迭代和比较之前保留最后一个随机数,但我相信一定有更好的解决方案。 提前谢谢。