JAVA怎么产生50-99之间的随机数
展开全部
一、思路:
1、生成随机数需要使用到Java工具类中的Random类。
2、要求是随机x到y之间的整数,即指定范围,则使用Random类中的nextInt(int n)方法。
3、该方法生成从0(包括)到n(不包括)之间的随机整数,是一个伪随机数,并不是真正的随机数。
4、若x不为0,则需要在随机结果后加上x。参数n的值也需要加上1后减去x。最后结果才符合要求的范围。
二、实现:
1、定义x和y的值,修改该值可以随机不同范围的整数。
2、调用Random中的nextInt(int n)方法,计算随机数。
3、将结果打印到控制台。
实现代码:
//java代码:生成一个从x到y之间的随机数(整数)
import java.util.Random;
/**
* 一、思路:
* 1、生成随机数需要使用到Java工具类中的Random类。
* 2、要求是随机x到y之间的整数,即指定范围,则使用Random类中的nextInt(int n)方法。
* 3、该方法生成从0(包括)到n(不包括)之间的随机整数,是一个伪随机数,并不是真正的随机数。
* 4、若x不为0,则需要在随机结果后加上x。参数n的值也需要加上1后减去x。最后结果才符合要求的范围。
* 二、实现:
* 1、定义x和y的值,修改该值可以随机不同范围的整数。
* 2、调用Random中的nextInt(int n)方法,计算随机数。
* 3、将结果打印到控制台。
* */
public class RandomTest {
public static final int START = 50; //定义范围开始数字
public static final int END = 99; //定义范围结束数字
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建Random类对象
Random random = new Random();
//产生随机数
int number = random.nextInt(END - START + 1) + START;
//打印随机数
System.out.println("产生一个"+START+"到"+END+"之间的随机整数:"+number);
}
}
运行结果图:
注意:因为随机结果不包含参数n,所以一定要+1,又因为结果会加上范围的起始值,所以参数还要再减去起始值。
2013-07-22
展开全部
(int)Math.random()*(99-50+1)+50;Math.random()产生0-1之间的随机数,大于等于0,小于1。(int)Math.random()*(99-50+1)产生的数从0到49。再加上50,得到50到99.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-10-11
展开全部
package ram.test;import java.util.Random;public class Ram {
public static void main (String []args)
{
Random ranNum = new Random();
for(int i = 0 ; i < 50; i++)
{
System.out.println(i + " : " + (ranNum.nextInt(50) + 50));
}
}}
用Random类先产生0-49的数字再加上50 结果:0 : 86
1 : 58
2 : 87
3 : 53
4 : 58
5 : 56
6 : 64
7 : 56
8 : 70
9 : 63
10 : 58
11 : 67
12 : 99
13 : 58
14 : 71
15 : 75
16 : 55
17 : 86
18 : 90
19 : 90
20 : 68
21 : 84
22 : 67
23 : 66
24 : 76
25 : 85
26 : 91
27 : 50
28 : 82
29 : 63
30 : 84
31 : 70
32 : 74
33 : 75
34 : 65
35 : 61
36 : 70
37 : 54
38 : 92
39 : 95
40 : 89
41 : 90
42 : 63
43 : 70
44 : 75
45 : 96
46 : 81
47 : 99
48 : 65
49 : 56
public static void main (String []args)
{
Random ranNum = new Random();
for(int i = 0 ; i < 50; i++)
{
System.out.println(i + " : " + (ranNum.nextInt(50) + 50));
}
}}
用Random类先产生0-49的数字再加上50 结果:0 : 86
1 : 58
2 : 87
3 : 53
4 : 58
5 : 56
6 : 64
7 : 56
8 : 70
9 : 63
10 : 58
11 : 67
12 : 99
13 : 58
14 : 71
15 : 75
16 : 55
17 : 86
18 : 90
19 : 90
20 : 68
21 : 84
22 : 67
23 : 66
24 : 76
25 : 85
26 : 91
27 : 50
28 : 82
29 : 63
30 : 84
31 : 70
32 : 74
33 : 75
34 : 65
35 : 61
36 : 70
37 : 54
38 : 92
39 : 95
40 : 89
41 : 90
42 : 63
43 : 70
44 : 75
45 : 96
46 : 81
47 : 99
48 : 65
49 : 56
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-22
展开全部
可以采用取模的方法,模44(99-50)的方法。利用Random的方法生成一个随机数,然后模44,在加上50,就是50-99之间的随机数了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-22
展开全部
Random r = new Random();System.out.println(50 + r.nextInt(99) % 45);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
更多回答(3)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询