在Java中有多种随机数生成的方法,主要都是java.util.Random及在此基础上的扩展,下面就使用几种常用的随机数生成工具来实现指定长度的随机数字字符串以及指定位数的随机数生成,完整的代码请点击下载。
1、使用Math的random静态方法
Math.random() 方法产生的随机数是 0 - 1 之间的一个 double
,即 0 <= random < 1,代码如下:
/**
* 产生一个随机数字字符串
*
* @param n 字符串长度,最长12位
* @return 随机数字字符串
*/
public static String randomStr(int n) {
int len = n;
if (len > 12) {
len = 12;
}
double randomNum = Math.random();
String randomNumStr = Double.toString(randomNum);
return randomNumStr.substring(2, len + 2);
}
/**
* 产生一个随机数字
*
* @param n 数字位数,比如:n=3,则产生0~999的随机数
* @return 随机数字
*/
public static int randomNum(int n) {
int len = n;
if (len > 8) {
len = 8;
}
double randomNum = Math.random() * Math.pow(10, len);
return (int)randomNum;
}
public static void main(String[] args) {
System.out.println("随机数字字符串:");
for (int i = 0; i < 5; i++) {
System.out.println(randomStr(6));
}
System.out.println();
System.out.println("随机数:");
for (int i = 0; i < 5; i++) {