📜  java 生成范围内的随机整数 - Java (1)

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

Java 生成范围内的随机整数

有时我们需要在 Java 中生成某个范围内的随机整数,下面是 Java 中生成随机整数的两种方式:

1. 通过 Random 类生成随机整数

可以使用 Java 中的 Random 类来生成随机整数,其中 nextInt 方法可以生成指定范围内的随机整数。

import java.util.Random;

public class RandomExample {
    public static void main(String[] args) {
        Random random = new Random();
        int start = 10;
        int end = 20;
        int randomInteger = random.nextInt(end - start + 1) + start;
        System.out.println("生成的随机整数为:" + randomInteger);
    }
}

这段代码会生成在 10 到 20 之间的随机整数。其中,random.nextInt(end - start + 1) 返回在 [0, end - start + 1) 范围内的随机整数,加上 start 之后就变成了在 [start, end + 1) 范围内的随机整数。

2. 通过 Math 类生成随机整数

Math 类中提供了 random 方法来生成随机浮点数,通过强制转换和取整操作可以生成指定范围内的随机整数。

public class MathExample {
    public static void main(String[] args) {
        int start = 10;
        int end = 20;
        int randomInteger = (int) (Math.random() * (end - start + 1)) + start;
        System.out.println("生成的随机整数为:" + randomInteger);
    }
}

这段代码同样会生成在 10 到 20 之间的随机整数。其中,Math.random() 返回 [0, 1) 内的随机浮点数,乘以 (end - start + 1) 之后,得到的结果就是 [0, end - start + 1) 内的随机浮点数。强制转换为整数之后,再加上 start 就得到了在 [start, end + 1) 范围内的随机整数。

以上两种方式都可以生成指定范围内的随机整数,具体使用哪一种方式可以根据实际情况进行选择。