Java如何创建随机数?

java.lang.Math.random()方法返回0.0到1.0之间的随机数,包括0.0但不包括1.0。通过将Math.random()结果与一个数字相乘,例如10将给我们一个0.0到10.0之间的随机数范围。

为了得到两个数字(之间的随机数n和m),我们可以使用的公式:n + (Math.random() * (m - n))。其中 n 是最小的数字(包括) ,m 是最大的数字(不包括)。

package org.nhooo.example.lang;

public class RandomNumberExample {
    public static void main(String[] args) {
        // Math.random()返回0.0到1.0之间的随机数 
        // 包括0.0但不包括1.0。
        double number = Math.random();
        System.out.println("Generated number: " + number);

        // 通过将Math.random()结果乘以一个数字,可以得出
        // 我们在例如0.0到10.0之间的随机数范围
        // 如以下示例所示。
        number = Math.random() * 10;
        System.out.println("Generated number: " + number);

        // 要获得介于n和m之间的随机数,我们可以使用以下公式:
        //n +(Math.random()*(m-n))。下面的示例创建随机
        // 介于100.0和200.0之间的数字。
        int n = 100;
        int m = 200;
        number = n + (Math.random() * (m - n));
        System.out.println("Generated number: " + number);

        // 创建一个整数随机数
        int random = 100 + (int) (Math.random() * 100);
        System.out.println("Generated number: " + random);
    }
}

这是我们程序的示例结果。

Generated number: 0.670447515721026
Generated number: 5.118459516569203
Generated number: 139.89504952544274
Generated number: 158