java生成指定范围内不重复的随机数(包含边界值)

生成指定范围内的随机数
rand.nextInt(100);
这行代码将生成范围 0~100 之间的随机数,有趣的是,取值可能为 0,但不可能为 100。
因为随机生成值区间是 [0, 100)范围内的整数,实际上就是区间 [0, 99]。因为最大边界为100,可惜不能等于100,因此最大可能产生的“整数”就是99。

只是区间 [0, 100] 正好从 0 开始,所以能取到0。

所以想要生成包含边界值的随机数,需要各+1。
rand.nextInt(100) + 1;

所以获取范围内包含边界值的公式:
int randNumber = rand.nextInt(MAX - MIN + 1) + MIN;

猜你喜欢

转载自pbd.iteye.com/blog/2350638