一. Math.random()
JAVA内置的随机数产生函数,Math.random()产生[0,1)区间的浮点数。
- 当我们需要扩充区间的时候,我们可以用下列公式:
Math.random() * (最大数-最小数) + 最小数
例1:当我们需要产生 [0-5) 的随机数
int a = (int)(Math.random() * 5)
例2:当我们需要产生 [5-10) 的随机数
int a = (int)(Math.random() * (10 - 5)+5)
- 如果我们要取得 [5-10],注意后面这里是 ] 。那我们要使用:
Math.random() * (最大数-最小数+1) + 最小数
例3:当我们需要产生 [5-10] 的随机数
int a = (int)(Math.random() * (10 - 5+1)+5)
注意:
这里的括号问题,(int)(Math.random() * (10 - 5+1)+5),括号要加到Math.random()外面,不然会先强制转化Math.random()为整型数,就是0,这样你得到值永远不变。
二. Random()
用这个函数需要先调包:
import java.util.Random;
下一步创建对象:
Random a = new Random();
再获取随机数,假如我们需要获取 [0-n) 范围随机数:
int b = a.nextInt(n);