java产生一个随机8位的数:
StringBuilder str=new StringBuilder();//定义变长字符串
Random random=new Random();
//随机生成数字,并添加到字符串
for(int i=0;i<8;i++){
str.append(random.nextInt(10));
}
//将字符串转换为数字并输出
int num=Integer.parseInt(str.toString());
System.out.println(num);
89999999*Math.random()+10000000
89999999*Math.random()-产生一个0-89999999的随机数,你要的是10000000-99999999,所以再加10000000.
/**
* @param digit 位数
* @return 随机生成digit位数的数字
*/
public static long getNum(int digit) {
StringBuilder str = new StringBuilder();
for (int i = 0; i < digit; i++) {
if (i == 0 && digit > 1)
str.append(new Random().nextInt(9) + 1);
else
str.append(new Random().nextInt(10));
}
return Long.valueOf(str.toString());
}
想生成几位数就传几(前提是在Long的范围内),比如要生成8位数的随机数,直接调 getNum(8)
直接
new Ramdom().nextInt(
100000000);
//100000000的意思是随机数一定小于它
String returnRandomConfNumber(int length)
{
Random random = new Random();
return String.valueOf(random.nextLong()).substring(1, length + 1);
}