学习笔记,仅供参考,有错必纠


Random类

Random类是在java.util包下的一个类,我们使用这个类时需要导包。此类用于生成伪随机数。如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。

构造方法

Random()
//创建一个新的随机数生成器。
Random(long seed)
//使用单个 long 种子创建一个新的随机数生成器。

方法

nextInt

public int nextInt()

返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。nextInt 的常规协定是,伪随机地生成并返回一个 int 值。所有 2322^{32}232个可能 int 值的生成概率(大致)相同。

public int nextInt(int n)

返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值(不包括)之间均匀分布的 int 值。nextInt 的常规协定是,伪随机地生成并返回指定范围中的一个 int 值。所有可能的 n 个 int 值的生成概率(大致)相同。

举个例子

  • 例子1
package com.guiyang.restudy3;import java.util.Random;public class D2Random {public static void main(String[] args) {Random r = new Random();for(int i = 0; i < 10; i++) {System.out.println(r.nextInt(100));}}}

输出:

19
67
35
79
31
92
83
76
70
66
  • 例子2
package com.guiyang.restudy3;import java.util.Random;public class D2Random {public static void main(String[] args) {Random r = new Random(100);for(int i = 0; i < 5; i++) {System.out.println(r.nextInt());}}}

输出:

-1193959466
-1139614796
837415749
-1220615319
-1429538713

我们利用有参构造创建一个Random对象,当我们再运行一次时,只要不改变种子100,得到的伪随机数的值依然还是和上面5个数的值相同,不会有任何改变,这是因为python会通过这些种子计算伪随机数,;而空参构造创建的Random对象,则是通过纳秒值生成伪随机数的,即把当前时刻的纳秒值当成种子计算伪随机数。

第三次学JAVA再学不好就吃翔(part68)--Random类相关推荐

  1. 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...

  2. 第三次学JAVA再学不好就吃翔(part106)--字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流输入流FileReader 字符流是什么 FileReader类构造方法 举个例子 字符流输出流FileWriter FileWriter构造方法 ...

  3. 第三次学JAVA再学不好就吃翔(part46)--Scanner类

    学习笔记,仅供参考 文章目录 Scanner类 Scanner获取数据出现的问题 Scanner类 概述 Scanner是在java.util包下的一个类,使用该类时我们需要导包.这个类被final修 ...

  4. 第三次学JAVA再学不好就吃翔(part117)--单例设计模式

    学习笔记,仅供参考,有错必纠 文章目录 多线程 单例设计模式 饿汉式 懒汉式 第三种格式 Timer类 线程的五种状态 多线程 单例设计模式 单例设计模式,即保证类在内存中只有一个对象,如何保证类在内 ...

  5. 第三次学JAVA再学不好就吃翔(part109)--LineNumberReader类

    学习笔记,仅供参考,有错必纠 IO流 LineNumberReader类 该类继承自java.io.BufferedReader,该类可以跟踪行号的缓冲字符输入流.此类定义了方法 setLineNum ...

  6. 第三次学JAVA再学不好就吃翔(part108)--带缓冲的字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 带缓冲的字符流 BufferedReader和BufferedWriter readLine和newLine方法 IO流 带缓冲的字符流 Buffere ...

  7. 第三次学JAVA再学不好就吃翔(part7)--基础语法之运算符

    学习笔记,仅供参考 文章目录 JAVA基础语法 运算符 算数运算符 算术运算符 ++和-- 赋值运算符 关系运算符 JAVA基础语法 运算符 什么是运算符 就是对常量和变量进行操作的符号. 运算符的分 ...

  8. 第三次学JAVA再学不好就吃翔(part115)--多线程

    学习笔记,仅供参考,有错必纠 文章目录 多线程 多线程引入 什么是线程 多线程并行和并发的区别 Java程序运行原理 多线程的实现方式 多线程实现的方式1 多线程程序实现的方式2 以上两种实现方式的区 ...

  9. 第三次学JAVA再学不好就吃翔(part113)--对象操作流

    学习笔记,仅供参考,有错必纠 对象操作流 对象操作流可以将一个对象写出, 或者读取一个对象到程序中,也就是执行了序列化和反序列化的操作. 举个例子 先构造一个Role类: package com.gu ...

最新文章

  1. Django 自定义模板标签TemplateTags
  2. 编写高质量代码的十个秘诀(转)
  3. 中国数据中心加速卡市场趋势报告、技术动态创新及市场预测
  4. 小米一元流量magisk_电信流量10G才9.9元?
  5. php后端文件,【后端开发】php文件用啥打开
  6. BZOJ 1003 [ZJOI2006]物流运输trans ★(Dijkstra + DP)
  7. C#的winform中MDI 父窗体改变背景色[转]
  8. 设计原则(6):开闭原则
  9. liunx版pgadmin3 source code安装
  10. 手机局域网关闭计算机的方法,用手机控制电脑关机 方法介绍【图文】
  11. infor wms 中英文对照_视听盛宴 I纸牌屋揭露美国政治权力运作(16中英、纯英、无字幕可切换视频+中英文全剧本+全季音频)...
  12. Xshell7的下载和安装
  13. 行业集中度数据(2000-2020年 )
  14. 计算机网络中的猫,宽带猫的作用和分类【图解】
  15. MFC C++ 中的内存释放问题
  16. 国外可以免费发布供求信息的网站(转)
  17. Python:实现寻峰算法(附完整源码)
  18. 高二数学不会,准高三该怎么办?高考数学如何从60到130?
  19. 服装收银系统软件怎么样?
  20. GCD API 记录 (三)

热门文章

  1. mysql某个字段改为非unique
  2. OpenCV学习笔记三-Mat数据结构
  3. 层次聚类分析代码_你知道如何聚类吗?层次聚类与聚类树
  4. 南方h5手簿求转换参数_工程之星、 gps操作、RTK求转换参数操作步骤
  5. MZOJ 1134: 二叉苹果树
  6. 面试题解(2):loop相关
  7. 三星三层影像传感器提升拍摄能力 索尼压力倍增
  8. Redis 存储分片之代理服务Twemproxy 测试
  9. 几个有用的ASP Function
  10. 网页设计师应向肖像画家吸取的11个理念