黑马程序员技术交流社区
标题:
关于random
[打印本页]
作者:
蓝枫
时间:
2014-3-28 13:41
标题:
关于random
class MathDemo
{
public static void main(String[] args)
{
for(int x= 0;x<10;x++)
{
int d = (int)(Math.random()*10+1);
sop(d);
}
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
为什么 Math.random()*10+1 就变成了1-10的随机数,不明白!求解释!
复制代码
作者:
osully
时间:
2014-3-28 13:47
java.lang
类 Math
static double random()
返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
相当于 0.0<= random()<1.0
random() *10+1 不就是 1.0<= random()* 10+1<11.0
强转成int类型 不就是1~10的整数了吗
作者:
H-Deka
时间:
2014-3-28 15:11
Math.random() 返回大于等于 0.0 且小于 1.0 的伪随机 double 值。
(int)Math.random()*10的取值范围在0--9,再加上1就是0--10之间
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2