Java 获取范围内的随机整数
原创
©著作权归作者所有:来自51CTO博客作者小目标青年来也的原创作品,请联系作者获取转载授权,否则将追究法律责任
获取随机数的方法好几种,我就不一一介绍了。
该篇想展示的是我常用的一种获取范围内随机整数的代码:
注意,展示的代码范围是 [ start , end ] ,也就基于这样已经满足我们的所有想实现的情况:
/**
* [0,10]
*/
int start=0;
int end=10;
int number = new Random().nextInt(end - start + 1) + start;
System.out.println(number);
使用这个代码,你只需要明确直接的取整数范围,然后传入 start和end 即可。
顺便提一下,如果你用这个代码加上for循环去实现获取多位随机数,那么你得注意了,记得把new Random() 单独提出来,
示例(获取数字键盘0~9 内的 5位随机数):
/**
* [0,9] 获取 5位随机整数
*/
int start=0;
int end=9;
StringBuffer numStr=new StringBuffer();
Random random = new Random();
for (int i=1;i<=5;i++){
numStr = numStr.append(random.nextInt(end - start + 1) + start);
}
System.out.println(numStr); // 例 :71250
PS:
如果是想获取的整数不包括0,(0,10】?
那其实就是从1开始... 也就是 :
如果是想获取的整数不包括10呢?
想获取【0,10),拿其实就是获取最大值为9......