Java中生成随机数的方式有哪些
发表于:2025-11-20 作者:千家信息网编辑
千家信息网最后更新 2025年11月20日,这篇"Java中生成随机数的方式有哪些"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"
千家信息网最后更新 2025年11月20日Java中生成随机数的方式有哪些
这篇"Java中生成随机数的方式有哪些"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Java中生成随机数的方式有哪些"文章吧。
一、Math.random()方法
该方法相对于 Random 类而言比较简单,因为 Math 类是 Java 的内置包装类,无需创建一个实例化对象,可以在程序中直接调用该类,以及使用该类的方法。
使用该方法的小伙伴们应该都知道,该方法只能是生成 [0.0,1.0) 之间 double 类型的任意一个小数,生成的随机数相对比较单一,想要生成其他类型的,就需要在该方法前面加上一个类型强转。
public class Demo01 { public static void main(String[] args) { for (int i = 0; i <5 ; i++) { System.out.println("第"+(i+1)+"个随机数"+Math.random());
} }}打印结果:
第1个随机数0.414584525834634
第2个随机数0.20853675432372987
第3个随机数0.8055865595912437
第4个随机数0.36986922245541953
第5个随机数0.8716016725358281
生成具体范围内的任意一个整数,例如在 [20, 35] 之间生成随机数。
public class Demo01 { public static void main(String[] args) { int num; for (int i = 0; i < 5; i++) { /** * 要求是在[20,35]之间生成一个随机整数 * 因为要包括35,但是random随机生成是不包括右侧的值,所以右侧取36 * 即[20,36) * 左右各减去20 [0,16) * 而Math.random的范围是在[0,1),需要乘上16 * 最后再加上20,即[20,36) * 在进行 int 强转 * */ num = (int)(Math.random()*16)+20; System.out.println("第"+(i+1)+"次:"+num); } }}打印结果:
第1次:29
第2次:25
第3次:33
第4次:34
第5次:30
二、Random类
Random 相较于 Math.random() 方法而言,它提供了各式各样的生成随机数的方式,可以生成 boolean,int,long,float,byte以及double类型的随机数。
Random 类是属于 java.util 包的,该类经常使用的两个构造方法如下:
Random() 使用一个和系统时间(也就是你电脑右下角的时间)对应的数字作为种子数,然后根据这个种子数构造一个 Random 对象。
Random(long seed) 使用单个 long 类型的参数创建一个新的随机数生成器。
下面将通过编写一个简单的 Java 程序,来演示 Random 的具体使用:
import java.util.Random;public class Demo02 { public static void main(String[] args) { // 需要创建一个Random类实例化对象 Random random=new Random(); double d1=random.nextDouble(); // 生成一个[0.0,1.0)之间double类型的小数 double d2=random.nextDouble() * 10; // 生成一个[0.0,10.0)之间double类型的小数 int i1=random.nextInt(5); // 生成[0,5)之间的一个整数 int i2=random.nextInt(15)-5;// 生成[-5,10)之间的一个整数 long l1=random.nextLong(); // 生成一个长整型的整数 boolean b1=random.nextBoolean(); // 生成一个布尔值 float f1=random.nextFloat(); // 生成一个浮点型 System.out.println("[0.0,1.0)随机生成的小数是:"+d1); System.out.println("[0.0,10.0)随机生成的小数是:"+d2); System.out.println("[0,5)随机生成的整数是:"+i1); System.out.println("[-5,10)随机生成的整数是:"+i2); System.out.println("随机生成的长整型是:"+l1); System.out.println("随机生成的布尔值是:"+b1); System.out.println("随机生成的浮点型是:"+f1); }}打印结果:
[0.0,1.0)随机生成的小数是:0.9045874539818738
[0.0,10.0)随机生成的小数是:1.1869962319035776
[0,5)随机生成的整数是:2
[-5,10)随机生成的整数是:1
随机生成的长整型是:4030922400205769823
随机生成的布尔值是:true
随机生成的浮点型是:0.3139649
以上就是关于"Java中生成随机数的方式有哪些"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
生成
随机数
整数
方法
之间
小数
类型
内容
方式
中生
对象
布尔
浮点
结果
右侧
实例
文章
时间
是在
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
移动路由器网络安全密钥
网络安全报公安局备案
多媒体数据库论文中英文
东莞车间备件管理软件开发
图游互联网科技
洛阳哪里学计算机网络技术
昭丰互联网科技
计算机网络技术与应用答题
开cc攻击服务器
edb 数据库
这份网络安全宝典要记好
h3c 网络安全题库
数据库的实体可以没有属性吗
抖音协议软件开发工作室
行政执法专题数据库
网络安全利与弊主持词
excel提取文本框数据库
网络安全证书怎么考
手机通信软件开发
ards患者数据库
专升本计算机数据库知识点总结
致力于通信网络技术服务的
全国网络安全大会直播回放
计算机软件开发上海
低贱北京网络技术培训
美团软件开发年终奖
无主之地2线上服务器不稳定
bmob云服务器数据库
计算机网络安全管理问题
安卓能不能加数据库