赞
踩
直接使用Math.random()这个静态的方法,random()方法返回一个[0,1)的随机数;
Math.random() 产生的随机数是0-1之间的一个double,我们可以把他乘以一定的数,比如说乘以100,他就是个100以内的随机
int ran = Math.random()*100
System.out.println((int)Math.random()*10); //优先级
System.out.println((int)(Math.random()*10));
输出:
0
7
//1-10的随机数
int random=(int)(Math.random()*10+1);
//1-50的随机数
new Random().nextInt(50) + 1
如果要获得随机两位整数,代码写成:rand.nextInt(90) + 10;
可以验证下,按照这样理解,[1, 100] 的随机数,是不是应该写成rand.nextInt(100) + 1 。rand.nextInt(100)生成[0,100),再加上1,刚好就是表示[1,100]区间范围。
因此,生成随机三位数的代码为:rand.nextInt(900)+ 100;
生成区间 [64,128] 中随机值的代码为:rand.nextInt(65)+ 64;
取值可能性的数量是如何计算出来的呢?当然是 最大取值-最小取值+1 ,所以,生成指定范围内的随机数的公式如下:
int randNumber =new Random().nextInt(MAX - MIN + 1) + MIN; // randNumber 将被赋值为一个 MIN 和 MAX 范围内的随机数
我们可以新建一个Random的对象来产生随机数,他可以产生随机整数、随机float、随机double,随机long
Random rd = new Random();
int r = rd.nextInt(100)
在我们的System类中有一个currentTimeMillis()方法,这个方法返回一个从1970年1月1号0点0分0秒到目前的一个毫秒数,返回类型是long。
我们可以拿他作为一个随机数,我们可以拿他对一些数取模,就可以把他限制在一个范围之内啦
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。