当前位置: 首页 > news >正文

Java随机数生成原理

1、Math库里的static(静态)方法random()

  该方法的作用是产生0到1之间(包括0,但不包括1)的一个double值。

double rand = Math.random();

2、通过Random类的对象

  程序可生成许多不同类型的随机数字,做法很简单,只需调用方法nextInt()和nextFloat()即可(也可以调用nextLong()或者nextDouble())。传递给nextInt()的参数设置了所产生随机数的上限,而其下限为0.

  如果在创建Random对象过程中没有传递任何参数,那么Java就会将当前时间作为随机数生成器的种子,并由此在程序每一次执行时都产生不同的输出。如果在创建Random对象时提供种子(用于随机数生成器的初始化值,随机数生成器对于特定的种子值总是产生相同的随机数序列),就可以在每一次执行程序时都生成相同的随机数,因此其输出是可验证的。

举例:生成1到100之间的随机数

复制代码
复制代码
import java.util.Random;

public class Radom{
public static void main(String[] strs){
Random rand = new Random();
System.out.println(rand.nextInt(99)+1);
}
}
复制代码
复制代码

设定种子,下例中的种子可以随便设定:

Random rand = new Random(47);

 

转载于:https://www.cnblogs.com/zxw0004/p/4874502.html

相关文章:

  • jvm参数详解,内存泄露解决
  • HDU 2815 Mod Tree 离散对数 扩张Baby Step Giant Step算法
  • centos 7 修改默认运行级别
  • Python之继承
  • hbase学习笔记1——脚本简单总结
  • 第四次作业——个人作业——软件案例分析
  • iOS小技巧之UIImagePickerController实现头像选择
  • 批量添加tiptop账号(批量添加Linux账号)
  • layer官方演示与讲解(jQuery弹出层插件)
  • 2015年10月26日作业
  • Python windows serial
  • ubuntu 系统网络突然网络已禁用
  • Golang的安装
  • 2015年9大优秀项目管理工具集锦
  • Linux 脚本 sh 和 ./ 的区别
  • [nginx文档翻译系列] 控制nginx
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • Bytom交易说明(账户管理模式)
  • C++类的相互关联
  • JS基础之数据类型、对象、原型、原型链、继承
  • Koa2 之文件上传下载
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • 反思总结然后整装待发
  • 力扣(LeetCode)22
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 阿里云服务器如何修改远程端口?
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​一些不规范的GTID使用场景
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • !!Dom4j 学习笔记
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #define,static,const,三种常量的区别
  • #define、const、typedef的差别
  • (11)MATLAB PCA+SVM 人脸识别
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .gitignore文件—git忽略文件
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .NET Core 中插件式开发实现
  • .NET Core中Emit的使用
  • .NET委托:一个关于C#的睡前故事
  • ??javascript里的变量问题
  • @Responsebody与@RequestBody
  • [1159]adb判断手机屏幕状态并点亮屏幕
  • [14]内置对象
  • [android] 天气app布局练习
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)
  • [C#] 我的log4net使用手册
  • [C++参考]拷贝构造函数的参数必须是引用类型
  • [Design Pattern] 工厂方法模式
  • [GDOUCTF 2023]<ez_ze> SSTI 过滤数字 大括号{等
  • [HackMyVM]靶场Crossbow