Java 随机数产生 Random和Math 解决

 ઇଓ 欢迎来阅读子豪的博客(Java语法篇

☾ ⋆有什么宝贵的意见或建议可以在留言区留言

ღღ欢迎 素质三连 点赞 关注 收藏

 码云仓库:补集王子 (YZH_skr) - Gitee.com

目录

Random

 运用包

0~100

1~100

50~100

Math


Random

Random 类诞生于 JDK 1.0,它产生的随机数是伪随机数,也就是有规则的随机数。Random 使用的随机算法为 linear congruential pseudorandom number generator (LGC) 线性同余法伪随机数。在随机数生成时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。

Random 对象在种子数相同的情况下,相同次数生成的随机数是相同的。比如两个种子数相同的 Random 对象,第一次生成的随机数字完全相同,第二次生成的随机数字也完全相同。默认情况下 new Random() 使用的是当前纳秒时间作为种子数的

执行效率比较高,生成的速度比较快,每次基于

 运用包

 import java.util.Random;

0~100

import java.util.Random;

public class test {
    public static void main(String[] args) {
        Random random = new Random();
        int rannum = random.nextInt(101);   // [0,101) ---> [0,100]
    }
}

1~100

import java.util.Random;

public class test {
    public static void main(String[] args) {
        Random random = new Random();
        int rannum = random.nextInt(100)+1;   // [1,101) ---> [1,100]
    }
}

50~100

import java.util.Random;

public class test {
    public static void main(String[] args) {
        Random random = new Random();
        int rannum = random.nextInt(51)+50;   // [50,101) ---> [50,100]
    }
}

Math

Math 类诞生于 JDK 1.0,它里面包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数,当然它里面也包含了生成随机数的静态方法 Math.random() ,此方法会产生一个 0 到 1 的 double 值,如下代码所示。

    public static void main(String[] args) {
    double number1 = Math.random();  //生成小数 0~1
    int number2 = (int) (Math.random() * 100);  // 0~100
    System.out.println("生成随机小数:" + number1);
    System.out.println("生成随机整数:" + number2);

猜你喜欢

转载自blog.csdn.net/qq_60021974/article/details/125702417