Java Random随机种子

第一种情况

 Random rand = new Random(47);

for(int i=0;i<10;i++)

System.out.println(rand.nextInt(100));

第二种情况

            Random rand = new Random();

for(int i=0;i<10;i++)

System.out.println(rand.nextInt(100));

查看源码就会发现Random.class中实现了这两种方法,第一种方法是初始化了一个生成随机数的种子,这样,不论执行多少遍第一种情况,每一遍生成的10个随机数相同Java Random随机种子 ,每次都是生成这10个数。所以说随机数也是按照某种算法进行的,只要给一个初始值,同一台机器上每次都是相同的结果。

第二种情况时随机种子,每次种子不一样,这样生成的结果也就不一样,所以第二种情况生成的随机数就不会有限定了。

至于nextInt(100)这个100表示生成随机数的范围是[0,100).

Math.random()该方法的作用是产生[0,1)中一个double值