欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

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

发布时间:2023/12/19 编程问答 45 豆豆
生活随笔 收集整理的这篇文章主要介绍了 第三次学JAVA再学不好就吃翔(part68)--Random类 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

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



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类的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。