Java中生成随机数的方式有哪些
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇"Java中生成随机数的方式有哪些"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"
千家信息网最后更新 2025年02月23日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安全错误
数据库的锁怎样保障安全
服务器ip地址修改
seer数据库 r语言
基因检测数据库无收录什么意思
远程服务器专门断线是什么原因
小数据库建设
广东云主机服务器服务商
服务器老主板设置
服务器下面有哪些垃圾
连云港在线联想服务器厂家直供
网络安全隐私调查背景
杭州服务器托管费用
国家军方网络安全部门招聘
网络安全工程师实务难吗
服务器安全狗咋安装
手机打不开服务器已停止响应
jsp页面显示数据库图片
网络安全是维护国家主权
epic方舟运行专用服务器闪退
网络技术不能促进人类道德
软件开发修改申请
数据库审核公式
我世界小游戏服务器
天津铁道计算机网络技术
xp 逻辑磁盘管理服务器
戴尔服务器网卡灯亮屏幕不显示
深圳c语言软件开发定做
办公数据库处理软件有哪些
法院 网络安全和信息化
access数据库sql
世界各个国家的网络安全部队