获取随机数的方法好几种,我就不一一介绍了。

该篇想展示的是我常用的一种获取范围内随机整数的代码:

 

注意,展示的代码范围是 [ 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开始... 也就是 :
 

int start=1;
int end=10;

 

如果是想获取的整数不包括10呢?

想获取【0,10),拿其实就是获取最大值为9......

int start=0;
int end=9;