不用Random类,自己重写一个java随机数生成方法
时间: 2024-01-14 18:02:55 浏览: 84
Java随机数算法原理与实现方法实例详解.docx
可以使用数学库中的随机数生成函数来生成伪随机数。下面是一个简单的例子:
```java
public class RandomNumberGenerator {
private long seed;
public RandomNumberGenerator(long seed) {
this.seed = seed;
}
public int nextInt(int n) {
seed = (seed * 1103515245 + 12345) % (1L << 31);
return (int) (seed % n);
}
}
```
这个随机数生成器使用了线性同余生成器(linear congruential generator)来生成伪随机数。随机数生成器的种子(seed)会影响生成的随机数序列。这个例子中的种子是一个long类型的整数,可以在构造函数中传入。
nextInt(n)方法会返回一个0到n-1之间的整数。它使用了一个简单的算法来生成随机数。如果需要更好的随机数质量,可以使用更复杂的算法,或者调用Java内置的Random类。
阅读全文