【Java】java.util.Random()/Random(long seed)
2016-05-17 15:57
399 查看
Random()选择的种子是和当前时间相关的,是随机的。
Random(Long seed) 种子是固定的,是伪随机的。
初始的种子不同:
Random()是采用默认生成的种子
Random(long seed)是自己设置的种子.
对于种子相同的, 生成的随机数序列是一致的.
比如new Random(10).nextInt()肯定等于new Random(10).nextInt()
但是new Random().nextInt()就不一定等于new Random().nextInt()
如果你在创建一个新的Random对象的时候,赋予一个基数的话,那你生成的随机数也就是一个定值。
因为这个随机数是根据基数计算出来的。
而如果直接使用缺省构造器的话,它的基数每次都不一样。
举例:
Random
rand = new Random(47);//所有随机数在0-47之间
int
a = rand.nextInt(20);//生成数在0-20之间
Random(Long seed) 种子是固定的,是伪随机的。
初始的种子不同:
Random()是采用默认生成的种子
Random(long seed)是自己设置的种子.
对于种子相同的, 生成的随机数序列是一致的.
比如new Random(10).nextInt()肯定等于new Random(10).nextInt()
但是new Random().nextInt()就不一定等于new Random().nextInt()
如果你在创建一个新的Random对象的时候,赋予一个基数的话,那你生成的随机数也就是一个定值。
因为这个随机数是根据基数计算出来的。
而如果直接使用缺省构造器的话,它的基数每次都不一样。
举例:
Random
rand = new Random(47);//所有随机数在0-47之间
int
a = rand.nextInt(20);//生成数在0-20之间
相关文章推荐
- ssh框架ajax获取后台list数据简单例子
- Java学习之反射机制学习笔记--3
- 给Java新手的一些建议----Java知识点归纳(Java基础部分)
- 学习练习 java编写西游记人物类
- Dubbo+SpringMVC工程创建详解(附工程文件)
- Java中的HashMap深入详解
- struts2内置效验器XXX-validation 配置文件问题
- javaWeb_XML
- java获取昨天的日期
- JAVA线程-Thread类的方法
- Spring基于注解及SpringMVC
- java 面向对象练习题5
- Btrace下载,配置,应用
- Java浮点数float和double精确计算的精度误差问题总结
- RSA js加密 java解密
- JAVA基础之--Lambda表达式,枚举类,垃圾回收机制,修饰符的使用范围
- SpringMVC @RequestBody接收Json对象字符串
- Spring中BeanFactory和FactoryBean区别
- Spring 4.x官方参考文档中文版——第21章 Web MVC框架(4)
- 【软件测试】Java读取.csv文件