相关疑难解决方法(0)

如何在Java中生成特定范围内的随机整数?

如何int在特定范围内生成随机值?

我试过以下,但那些不起作用:

尝试1:

randomNum = minimum + (int)(Math.random() * maximum);
// Bug: `randomNum` can be bigger than `maximum`.
Run Code Online (Sandbox Code Playgroud)

尝试2:

Random rn = new Random();
int n = maximum - minimum + 1;
int i = rn.nextInt() % n;
randomNum =  minimum + i;
// Bug: `randomNum` can be smaller than `minimum`.
Run Code Online (Sandbox Code Playgroud)

java random integer

3373
推荐指数
45
解决办法
391万
查看次数

在 [-2, 2] 之间生成随机 X.XXX 数字

x = rd.nextInt((4000) - 2000) / 1000.0;
Run Code Online (Sandbox Code Playgroud)

这是在 [0, 2] 到十进制小数之间生成数字,这是我想要的,我只需要负数,所以生成的数字范围在 [-2, 2] 之间。

java

7
推荐指数
1
解决办法
876
查看次数

为什么int answer = generator.nextInt(10)+ 1; 只产生1到10之间的数字?

我不明白为什么它不会产生超过11.

这是我的测试代码:

import java.util.Random;

public class randomNumberTest
{
    public static void main(String[] args)
    {
         Random rn = new Random();
         //tests random number generator (between 1(inc) and 10(excl))
         for(int i =0; i < 100; i++)
         {
             int answer = rn.nextInt(10) + 1;
             System.out.println(answer);
         }
    }
}
Run Code Online (Sandbox Code Playgroud)

java random next

-1
推荐指数
1
解决办法
1835
查看次数

标签 统计

java ×3

random ×2

integer ×1

next ×1