Java Random类里的种子问题怎么解决
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本文小编为大家详细介绍"Java Random类里的种子问题怎么解决",内容详细,步骤清晰,细节处理妥当,希望这篇"Java Random类里的种子问题怎么解决"文章能帮助大家解决疑惑,下面跟着小编的
千家信息网最后更新 2026年10月31日Java Random类里的种子问题怎么解决
本文小编为大家详细介绍"Java Random类里的种子问题怎么解决",内容详细,步骤清晰,细节处理妥当,希望这篇"Java Random类里的种子问题怎么解决"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
可以说在现在的计算机语言里面,以及普通用户这里,都是没有办法获得真正的 随机数的。真正的随机数现在也只有在量子计算机当中才有获得。
所以我们现在所说的随机数,也可以称为伪随机数,伪随机数是通过一种算法并且结合当下一个有规律其不断改变的数(比如时间)获得的结果。
我们将这种通过算法集合时间作为初始获得随机数的基准的数据称为种子。
Java当中创建随机数的方式是有两种的:
第以种就是直接创建Random对象
Random random = new Random();
在底层就会调用这个方法来得到种子:
第二种就是将自己创建的种子传进去:
Random random = new Random(5);
在源码里我们可以直接看出种子的数据类型为long型,是长整形。
所以我们现在就有一种办法,在它最开始生成Random对象的时候,获得它生成的种子,然后将获得的种子又传入创建Random的对象当中。是不是就可以获得上面一模一样的随机数了?
先拿java语言来实现一下:
import java.util.Random;public class Demo02 { public static void main(String[] args) { Random random = new Random(5);//在这将5作为种子传入 System.out.println("第一次调用:"); for (int i = 0; i < 5; i++) { System.out.print(random.nextInt(10) + "\t"); //获得10以内的随机数(不包括10) } random.setSeed(5);//在这再将种子5传入Random的种子当中 System.out.println("\n第二次调用:"); for (int i = 0; i < 5; i++) { System.out.print(random.nextInt(10) + "\t"); } }}在这明显的看出,这个随机数是一点都不随机的。两次只要种子一样,就能返回相同的结果。
在这我再用python语言在实现一次这个功能(主要是java当中没有能调用输出当前种子的方法)。用python有一个更好的理解。
在python里面我会更加详细的写清注释,详细不会很难理解不了的。
import random #导入random内库x = random.getstate() # 获得当前random里的种子print('第一次循环:') #输入语句for i in range(5): #for循环 for i in range(5) ===》 for (int i = 0; i < 5; i++) #在python里面并没哟什么大括号去吧什么括起来,而是要注意锁定,一个锁定就是一个整体 print(random.randint(1, 10), end='\t') #random.randint(1, 10)生成1~10(不包括10)的随机数, # end='\t'表示当前print没有结束,还有一个制表符的键位,也就不换行了print('\n第二次循环')random.setstate(x)#将上面获得的种子再次传入进去for i in range(5): #这里和上面一样,循环出5次 print(random.randint(1, 10), end='\t')读到这里,这篇"Java Random类里的种子问题怎么解决"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
种子
随机数
循环
问题
对象
就是
文章
语言
生成
内容
办法
数据
方法
时间
第一次
算法
结果
计算机
妥当
明显
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
华服互联网科技怎么样
金融科技与互联网金融
合肥互联网科技公司
狮子座互联网科技
南京欣网互联网科技
互联网 新科技
广州优美互联网科技
互联网大会黑科技排名
互联网公司科技股
搜狐科技互联网
国大互联网教育科技有限公司工作
乌鲁木齐新华智原互联网科技学校
科技大学互联网
沐思想互联网科技有限公司
富国互联网科技002692
互联网风格科技公司名称
中国互联网公司的科技投入
互联网科技博主张洲
平安好医生打造互联网科技医疗
小牛互联网科技有限公司地址
互联网科技公司税收优惠
中资互联网科技
科技创新互联网企业
无线互联网科技
四川狮子座互联网科技
互联网科技实习生岗位
下一代互联网重大应用科技园
互联网科技手抄报图片
好易买互联网科技
北京瑞云互联网科技有限公司