Serializable, RepeatableRNGpublic class XORShiftRNG extends Random implements RepeatableRNG
Very fast pseudo random number generator. See
this
page for a description. This RNG has a period of about 2^160, which is not as long
as the MersenneTwisterRNG but it is faster.
NOTE: Because instances of this class require 160-bit seeds, it is not
possible to seed this RNG using the Random.setSeed(long) method inherited
from Random. Calls to this method will have no effect.
Instead the seed must be set by a constructor.
| Constructor | Description |
|---|---|
XORShiftRNG() |
Creates a new RNG and seeds it using the default seeding strategy.
|
XORShiftRNG(byte[] seed) |
Creates an RNG and seeds it with the specified seed data.
|
XORShiftRNG(SeedGenerator seedGenerator) |
Seed the RNG using the provided seed generation strategy.
|
public XORShiftRNG()
public XORShiftRNG(SeedGenerator seedGenerator) throws SeedException
seedGenerator - The seed generation strategy that will provide
the seed value for this RNG.SeedException - If there is a problem generating a seed.public XORShiftRNG(byte[] seed)
seed - The seed data used to initialise the RNG.public byte[] getSeed()
getSeed in interface RepeatableRNG