```java
public class Test{
public static void main(String args[]){
System.out.println( Math.random() );
System.out.println( Math.random() );
}
}
生成的数字是double类型的,但是代码里看不到任何与double有关的字眼,为什么会生成double类数字呢?
第二个问题:随机生成四位整数:
Math.random()*9000+1000 或 (int)((Math.random()*9+1)*1000)//可不可以后面是9999+1,并且我不理解第二个随机生成四位数整数的表达。
第一个,random的返回值就是double的,直接用println输出了
函数的定义在java库里,具体在哪忘记了你可以查一下
第二个,random生成的数原始范围是0-1,只要你把他映射到1000-9999即可,比如*9000就是映射到0-9000,再加1000就是1000-10000(不包含10000),另一个写法是先映射到0-9,再加一,映射到1-10,再乘1000,最后也是映射到1000-10000
有帮助望采纳
1 Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值
首先,你需要理解方法以及方法的返回值。
其次,你需要复习小学的混合运算。
既然是生成四位随机整数,你可以每一位都单独随机生成,再组合一起。
因为这个方法有返回值呀