类型: 安全缺陷
不应为Random.setSeed设置特定值作为参数。如果Random对象使用特定值作为种子,则Random.nextInt()以及类似方法返回的值是可以预测的。
Random a = new Random();
a.setSeed(111111);
int i = a.nextInt();
double x = a.nextDouble()
Random b = new Random();
b.setSeed(111111);
int j = b.nextInt();
double y = b.nextDouble()
在此例中:Random对象a和b设置了相同的种子,i和j以及x和y的值都是相等的。