Class JDKRandom
java.lang.Object
org.apache.commons.rng.core.BaseProvider
org.apache.commons.rng.core.source32.IntProvider
org.apache.commons.rng.core.source32.JDKRandom
- All Implemented Interfaces:
RandomIntSource,RestorableUniformRandomProvider,UniformRandomProvider
public class JDKRandom extends IntProvider
A provider that uses the
Random.nextInt() method of the JDK's
Random class as the source of randomness.
Caveat: All the other calls will be redirected to the methods implemented within this library.
The state of this source of randomness is saved and restored through
the serialization of the Random instance.
- Since:
- 1.0
-
Constructor Summary
Constructors Constructor Description JDKRandom(java.lang.Long seed)Creates an instance with the given seed. -
Method Summary
Modifier and Type Method Description protected byte[]getStateInternal()Creates a snapshot of the RNG state.intnext()protected voidsetStateInternal(byte[] s)Resets the RNG to the givenstate.Methods inherited from class org.apache.commons.rng.core.source32.IntProvider
nextBoolean, nextBytes, nextBytes, nextDouble, nextFloat, nextInt, nextLongMethods inherited from class org.apache.commons.rng.core.BaseProvider
checkIndex, checkStateSize, composeStateInternal, fillState, fillState, nextInt, nextLong, restoreState, saveState, splitStateInternal, toString
-
Constructor Details
-
JDKRandom
public JDKRandom(java.lang.Long seed)Creates an instance with the given seed.- Parameters:
seed- Initial seed.
-
-
Method Details
-
next
public int next()- Returns:
- the next random value.
- See Also:
Random.nextInt()
-
getStateInternal
protected byte[] getStateInternal()Creates a snapshot of the RNG state.- Overrides:
getStateInternalin classIntProvider- Returns:
- the internal state.
-
setStateInternal
protected void setStateInternal(byte[] s)Resets the RNG to the givenstate.- Overrides:
setStateInternalin classIntProvider- Parameters:
s- State (previously obtained by a call toBaseProvider.getStateInternal()).- See Also:
BaseProvider.checkStateSize(byte[],int)
-