首页 > 代码库 > 拿来就用——随机数的使用与生成概率

拿来就用——随机数的使用与生成概率

Random 类,用来生成指定区间的随机数字,其构造函数有不带参数和带参数两种,带参数的构造器其参数为种子数。

假设下列r为Random对象

Random r = new Random();

1. 生成任意整数  

int i = r.nextInt();

2. 生成[0,n]区间的整数 (两种)

int i= r.nextInt(n+1);

n3 = Math.abs(r.nextInt() % (n+1));

3. 生成[0,n)区间的整数

int i= r.nextInt(n);

4. 生成[0,1.0)区间的小数

double d = r.nextDouble();

5. 生成[1,2.5)区间的小数

double d = r.nextDouble() * 1.5 + 1;

值得注意的是:如果 r的构造器是携带参数

Random r = new Random(n)

参数n为long类型,称为种子数,拥有相同种子数的Random对象,相同次数生成的随机数是完全相同。

测试如下图

技术分享

因此,在实际项目中,只使用一个就可以。

另外,Math也提供了一个函数random(),用来生成大于等于0.0且小于1.0的伪随机double值。




拿来就用——随机数的使用与生成概率