使用 Xorshift 随机数生成器...我已经有了生成器,但我无法修改它以提供介于 0 和上限之间的数字(如nextInt()
Java Random 类中的方法)。
long seed = System.nanoTime();
int next(int nbits) {
long x = seed;
x ^= (x << 21);
x ^= (x >>> 35);
x ^= (x << 4);
seed = x;
x &= ((1L << nbits) -1);
return (int) x;
}
有任何想法吗?