Java中生成随机数的方式有哪些
发表于:2024-11-16 作者:千家信息网编辑
千家信息网最后更新 2024年11月16日,这篇"Java中生成随机数的方式有哪些"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"
千家信息网最后更新 2024年11月16日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安全错误
数据库的锁怎样保障安全
才牛网络技术
河北省网络安全宣传周方案
吉林数据软件开发服务标准
滨州定制软件开发哪家好
数据库怎么导出视频
佛山商城软件开发外包公司
戴尔服务器开机就进入
mysql数据库管理工具排行
全国网络安全在北京召开
吐槽武汉大学网络安全学院
软件开发功能页面结构
如何下载安检服务器
电信服务器租赁价
信息网络安全管理计划
孙灵生全国好医生人物数据库
网络安全法拔萃
服务器无限断开连接
ftp服务器 软件
软件开发哪些语言好
清空数据库日志 收缩数据库
数据库测试脸型
云服务器如何设置安全规则
怎么做数据库的数据校验
网络安全2018大会
吐槽武汉大学网络安全学院
软件开发功能页面结构
数据库删除女学生表
国网电科院网络安全检测
云服务器管理控制台在哪
龙口管理系统软件开发哪家靠谱