1.获取随机数字
/**
* 获取固定长度的随机数字
*
* @param n
* @return
*/
public static String getRandom(int n) {
if (n == 0) {
return null;
}
Random random = new Random();
StringBuffer buffer = new StringBuffer(n);
for (int i = 0; i < n; i++) {
buffer.append(String.valueOf(random.nextInt(10)));
}
return buffer.toString();
}
2.这样效率更高
int random = (int) ((Math.random() * 9 + 1) * 1E5); // 首位不会是0
or
int random = (int) ((Math.random() * 9) * 1E5);
if (random < 100000) {
random += 100000;
}
3.获取区间随机数[a,b]
int n = r.nextInt(b - a + 1) + a;
n = Math.abs(r.nextInt() % (b - a + 1)) + 1;
// 相对于整数区间,[1,10]区间和[1,11)区间等价,所以即生成[1,11)区间的整数。