java随机数的产生比较简单,可以通过
1
Random rand = new Random(47);
System.out.println(rand.nextInt());
产生,也可以通过一下产生
2
double d = Math.random();
当然代码中前者由于使用了固定的种子47,所以每次的值都是一样的,也可以使用
3
Random rand = new Random();
System.out.println(rand.nextInt());
而对于代码2则产生的是double的随机数。
下面说下关于3的方式,目前有个需求就是需要产生4为随机数,用于短信注册码的生成,那么就需要使用到随机数,于是使用代码3来实现。若之间使用该代码那么结果并不能满足条件,那么通过以下方式来实现:
//方式一
Random rand = new Random();
for(int i = 0; i < 4; i++){
System.out.print(Math.abs(rand.nextInt() % 10));
}
//以上通过rand.next产生随机数,因可能存在负数,用Math.abs取绝对值,然后取模10,产生的结果在10以内
//方式二
Random rand = new Random();
for(int i = 0; i < 4; i++){
System.out.print(rand2.nextInt(10));
}
//以上使用api直接产生10以内的随机数