Random的坑
程序员文章站
2024-03-19 11:13:04
...
之前一直以为Random是随便怎么用都是出现随机数的,但是在写到thinking in java 的一个例子时,发现怎样运行都是一样的随机数,就感觉很纳闷。代码如下:
package com.zml;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Random;
/**
* Created by zml on 2018/8/25.
*/
public class QueueDemo {
public static void printQ(Queue queue) {
while (queue.peek() !=null){
System.out.print(queue.remove()+ " ");
}
System.out.println();
}
public static void main(String[] args) {
Queue<Integer> queue = new LinkedList<Integer>();
Random rand = new Random(47);
for (int i = 0; i < 10; i++) {
queue.offer(rand.nextInt(i +10));
}
printQ(queue);
}
}
最后是查到Random有个属性是种子,只要种子是一样的,无论是你取得随机数范围多大,每次运行产生的随机数都一样。
关于种子有篇博客很清楚:https://blog.csdn.net/u011240877/article/details/52971166