你这个代码是包含在题目里面的么? public static void main(String[] args) { int i= (int) (Math.random()*60); if (i < 5) { System.out.println("恭喜中了:iphone手机"); }else if (i < 17) { System.out.println("恭喜中了:mp3"); } else if (i < 47) { System.out.println("恭喜中了:洗衣粉"); } else { System.out.println("恭喜中了:KFC优惠券"); } } 要是换成这样,就基本上可以了
.....
public static void main(String[] args)
{
int i= (int) (Math.random()*60);
if (i < 5) {
System.out.println("恭喜中了:iphone手机");
}else if (i < 17) {
System.out.println("恭喜中了:mp3");
} else if (i < 47) {
System.out.println("恭喜中了:洗衣粉");
} else {
System.out.println("恭喜中了:KFC优惠券");
}
}
要是换成这样,就基本上可以了
在你那个题目里面可能由于前面的转换类型的优先级要高,先转换类型再乘的,会有错误
0+(int)(Math.random()*60)其中最前面的0可以是任意数,因为题目给出来到(int) Math.random() * 本身已经是0了,明白?
(int) (Math.random() *61)应该可以