JAVA学习总结之Random类

来源:互联网 发布:2017虚拟网络黄金egd 编辑:程序博客网 时间:2024/05/16 19:36

Random类产生伪随机数,它的用法有点意识。

Random rand = new Random();

如果在实例化时没有传递任何参数,那么Java就会将当前时间作为随机数生成器的种子,并由此在程序没一次执行是都产生不同的输出。而如果在实例化时提供种子,就可以在每次执行程序时都生成相同的随机数,并且它的输出是可以验证的。

(一)  例如:Random rand = new Random();

int k = rand.nextInt()+1;

 此时rand.nextInt() 或者 rand.nextInt(20) ,程序在每次运行时都会产生不同的随机数。

(二) Random rand = new Random(47);

(47被Bruce Eckel成为魔幻数字)  此时若 int k = rand.nextInt()+1; 每次程序的运行k都会得到相同的值。

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

此时每次程序运行 k 也会得到相同的值。

原创粉丝点击