您的位置:首页 > 编程语言 > Java开发

Java随机数总结

2018-03-06 16:12 225 查看

1、Java中随机数生成方式

[b]1)java.util.Random[/b] Random类中的随机算法是伪随机,也就是有规则的随机,随机数实际上是seed经过运算后近似随机数的数字。指定seed,随机数序列确定;默认seed为系统当前时间戳。 常用方法: · nextInt(),返回int值 · nextInt(n),返回[0, 1) · nextDouble(),返回[0.0, 1.0),nextDouble()没有参数
//Random random = new Random();//默认构造方法
Random random = new Random(10);//指定seed
int i = random.nextInt(10);
[b]2)Math.random()[/b] Math工具类,Math.random()返回[0.0, 1.0)double,内部实现就是封装了Random.nextDouble方法。
double d = Math.random();
[b]3)System.currentTimeMillis(),获取系统时间戳,取余[/b]
long l = System.currentTimeMillis();
int i = (int)(l % 100);

2、范围随机数生成

[b]1)整型[/b] · [min, max),random.nextInt(max - min) + min · [min, max],random.nextInt(max - min + 1) + min · 以33.5%的概率生成1, 66.5%概率生成0:
Random random = new Random(10);
int sum = 0; //33.5%概率生成1,66.5%概率生成0
for (int i = 0; i < 100000; i++) {
int data = random.nextInt(1000);
if (data < 335) sum++;
}
System.out.println(sum);
[b]2)浮点型[/b] · [0, 1.0),random.nextInt() · [0, max),random.nextInt() * max · [min, max),random.nextInt() * (max - min) + min
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java random 随机数 应用