为了账号安全,请及时绑定邮箱和手机立即绑定

正在回答

6 回答

正如楼上所说,你在使用生成随机数这个类时少了一个括号,所以结果会大不相同。int ran = (int)(Math.random()*90+10),我也掉了一个括号

0 回复 有任何疑惑可以回复我~

因为Math.random()就是0.xxx,所以(int)Math.random()就是0了,乘多少都是0
(int)(Math.random()*12) 就ok了

0 回复 有任何疑惑可以回复我~

package com.while1;


public class sunJishu {

public static void main(String[] args){

int i=(int)Math.random()*12;

System.out.println(i);

}


}

为啥总是0,不是随机一个数

0 回复 有任何疑惑可以回复我~

获得[0,100]的随机两位整数:int ran = (int)Math.random()*90+10

0 回复 有任何疑惑可以回复我~
#1

慕斯1379455 提问者

为什么要加10呢
2017-05-24 回复 有任何疑惑可以回复我~
#2

慕粉2146481662 回复 慕斯1379455 提问者

int ran = (int)Math.random()*90+10,刚才的回复有点小问题,现在这个是正确的,10表示想要获得的两位随机数的起始数字,答复中的*后的90是要获得的两位数的这个范围的上限减去下限(即100-10=90)后的结果。
2017-05-24 回复 有任何疑惑可以回复我~

如获得0-19之间的随机int数:int i = (int)(Math.random()*19)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

java随机数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信