📜  como limitar o random em java (1)

📅  最后修改于: 2023-12-03 15:00:00.427000             🧑  作者: Mango

如何在Java中限制随机数范围

在Java中,可以使用随机数生成器来生成随机数。但是有时候我们需要限制随机数的范围,以确保生成的随机数符合我们的要求。下面介绍几种在Java中限制随机数范围的方法。

方法一:使用Java.util.Random类

Java.util.Random类可以用来生成随机数。通过设置生成随机数的范围,我们可以限制随机数的范围。下面是一个示例代码:

import java.util.Random;

public class RandomNumberExample {
    public static void main(String[] args) {
        Random random = new Random();
        int min = 1;
        int max = 100;
        int range = max - min + 1;

        for (int i = 0; i < 10; i++) {
            int randomNum = random.nextInt(range) + min;
            System.out.println(randomNum);
        }
    }
}

在这个示例中,我们使用了Java.util.Random类来生成随机数。我们设置了随机数的最小值为1,最大值为100。

我们使用了random.nextInt(range)来生成随机数,并使用min加上生成的随机数来保证随机数的范围在1到100之间。

方法二:使用Math.random()方法

Math.random()方法可以生成一个0到1之间的随机数。我们可以通过乘以一个数并加上一个数来扩大或缩小该数的范围。下面是一个示例代码:

public class RandomNumberExample {
    public static void main(String[] args) {
        int min = 1;
        int max = 100;
        int range = max - min + 1;

        for (int i = 0; i < 10; i++) {
            int randomNum = (int)(Math.random() * range) + min;
            System.out.println(randomNum);
        }
    }
}

在这个示例中,我们使用Math.random()方法生成0到1之间的随机数。我们将该随机数乘以(max - min + 1)并加上min,以将随机数的范围限制在1到100之间。

方法三:使用ThreadLocalRandom类

ThreadLocalRandom类是Java 7中引入的,可以用来生成线程本地的随机数。与Java.util.Random不同,ThreadLocalRandom不需要像Java.util.Random一样在多线程环境中进行同步操作。下面是一个示例代码:

import java.util.concurrent.ThreadLocalRandom;

public class RandomNumberExample {
    public static void main(String[] args) {
        int min = 1;
        int max = 100;

        for (int i = 0; i < 10; i++) {
            int randomNum = ThreadLocalRandom.current().nextInt(min, max + 1);
            System.out.println(randomNum);
        }
    }
}

在这个示例中,我们使用ThreadLocalRandom类来生成随机数。我们设置了随机数的最小值为1,最大值为100,并使用ThreadLocalRandom.current().nextInt(min, max + 1)来生成随机数。

结论

以上是几种在Java中限制随机数范围的方法。通过使用这些方法,我们可以生成符合我们要求的随机数。