Java 随机数产生 Random和Math 解决

简介: Java 随机数产生 Random和Math 解决

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


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


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


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


Random


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


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


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


18ba725f724442b3a3c2a9bcd6795d07.png


运用包


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);
相关文章
|
3月前
|
Java
【Java】Math、System、RunTime、BigDecimal类常用方法
【Java】Math、System、RunTime、BigDecimal类常用方法
|
1月前
|
Java
java的Random类和Arrays.sort类使用实例
java的Random类和Arrays.sort类使用实例
9 0
|
1月前
|
Java
java值random类的使用
java值random类的使用
10 0
|
1月前
|
Java
java的Math类和random类
java的Math类和random类
12 0
|
2月前
|
Java
Java Number & Math 类详解
在 Java 中,`Number` 类和 `Math` 类是处理数字和数学运算的重要工具。
|
3月前
|
Java
Java系类 之 生成随机数(random()和Random类)
这篇文章介绍了Java中生成随机数的两种方法:使用`Math.random()`方法和`Random`类的实例方法,并提供了示例代码展示如何使用这些方法生成特定范围或特定条件下的随机数。
|
5月前
|
存储 安全 Java
Java生成随机数的代码和方法
Java生成随机数的代码和方法
118 6
|
4月前
|
Java 开发者
Java基础之Math类
【7月更文挑战第2天】 Java的Math类在`java.lang`包中,提供数学运算如绝对值、最大值/最小值、幂运算、开方、三角函数、对数、随机数等。它包含常量E(自然对数底数)和PI(圆周率)。方法如`abs()`返回绝对值,`max()`和`min()`返回最大/小值,`pow()`计算次幂,`sqrt()`求平方根。还有`sin()`, `cos()`, `tan()`等三角函数以及`random()`生成随机数。通过这些静态方法,开发者能方便地执行各种数学计算。
24 0
|
4月前
|
Java
Java基础之Math类
Java基础之Math类
55 0
|
5月前
|
算法 安全 Java
什么是Java伪随机数,基础打牢。 #程序员 #Java #编程
什么是Java伪随机数,基础打牢。 #程序员 #Java #编程
32 0