Package weka.core
Class Debug.Random
java.lang.Object
java.util.Random
weka.core.Debug.Random
- All Implemented Interfaces:
Serializable,RandomGenerator,RevisionHandler
- Enclosing class:
- Debug
This extended Random class enables one to print the generated random
numbers etc., before they are returned. It can either use stdout (default)
for outputting the logging information or a Log object (level is then
INFO).
- Version:
- $Revision: 8034 $
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface java.util.random.RandomGenerator
RandomGenerator.ArbitrarilyJumpableGenerator, RandomGenerator.JumpableGenerator, RandomGenerator.LeapableGenerator, RandomGenerator.SplittableGenerator, RandomGenerator.StreamableGenerator -
Constructor Summary
ConstructorsConstructorDescriptionRandom()Creates a new random number generator.Random(boolean debug) Creates a new random number generator.Random(long seed) Creates a new random number generator using a single long seed.Random(long seed, boolean debug) Creates a new random number generator using a single long seed. -
Method Summary
Modifier and TypeMethodDescriptionbooleangetDebug()returns whether to print the generated random values or notlonggetID()returns the unique ID of this number generatorgetLog()the currently used log, if null then stdout is used for outputting the debugging informationReturns the revision string.booleanReturns the next pseudorandom, uniformly distributed boolean value from this random number generator's sequence.voidnextBytes(byte[] bytes) Generates random bytes and places them into a user-supplied byte array.doubleReturns the next pseudorandom, uniformly distributed double value between 0.0 and 1.0 from this random number generator's sequence.floatReturns the next pseudorandom, uniformly distributed float value between 0.0 and 1.0 from this random number generator's sequence.doubleReturns the next pseudorandom, Gaussian ("normally") distributed double value with mean 0.0 and standard deviation 1.0 from this random number generator's sequence.intnextInt()Returns the next pseudorandom, uniformly distributed int value from this random number generator's sequence.intnextInt(int n) Returns a pseudorandom, uniformly distributed int value between 0 (inclusive) and the specified value (exclusive), drawn from this random number generator's sequence.longnextLong()Returns the next pseudorandom, uniformly distributed long value from this random number generator's sequence.voidprints the current stacktracevoidsetDebug(boolean value) sets whether to print the generated random values or notvoidthe log to use, if it is null then stdout is usedvoidsetSeed(long seed) Sets the seed of this random number generator using a single long seed.toString()returns a string representation of this number generatorMethods inherited from class java.util.Random
doubles, doubles, doubles, doubles, ints, ints, ints, ints, longs, longs, longs, longsMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.random.RandomGenerator
isDeprecated, nextDouble, nextDouble, nextExponential, nextFloat, nextFloat, nextGaussian, nextInt, nextLong, nextLong
-
Constructor Details
-
Random
public Random()Creates a new random number generator. With no debugging. -
Random
public Random(long seed) Creates a new random number generator using a single long seed. With no debugging- Parameters:
seed- the seed value
-
Random
public Random(boolean debug) Creates a new random number generator. With optional debugging.- Parameters:
debug- if true, debugging output is enabled
-
Random
public Random(long seed, boolean debug) Creates a new random number generator using a single long seed. With optional debugging- Parameters:
seed- the seed valuedebug- if true, debugging output is enabled
-
-
Method Details
-
setDebug
public void setDebug(boolean value) sets whether to print the generated random values or not- Parameters:
value- if true debugging output is enabled
-
getDebug
public boolean getDebug()returns whether to print the generated random values or not- Returns:
- true if debugging output is enabled
-
setLog
the log to use, if it is null then stdout is used- Parameters:
value- the log to use
-
getLog
the currently used log, if null then stdout is used for outputting the debugging information- Returns:
- the log, can be null
-
getID
public long getID()returns the unique ID of this number generator- Returns:
- the unique ID of this number generator
-
printStackTrace
public void printStackTrace()prints the current stacktrace -
nextBoolean
public boolean nextBoolean()Returns the next pseudorandom, uniformly distributed boolean value from this random number generator's sequence.- Specified by:
nextBooleanin interfaceRandomGenerator- Overrides:
nextBooleanin classRandom- Returns:
- random boolean
-
nextBytes
public void nextBytes(byte[] bytes) Generates random bytes and places them into a user-supplied byte array.- Specified by:
nextBytesin interfaceRandomGenerator- Overrides:
nextBytesin classRandom- Parameters:
bytes- array to fill with random bytes
-
nextDouble
public double nextDouble()Returns the next pseudorandom, uniformly distributed double value between 0.0 and 1.0 from this random number generator's sequence.- Specified by:
nextDoublein interfaceRandomGenerator- Overrides:
nextDoublein classRandom- Returns:
- random double
-
nextFloat
public float nextFloat()Returns the next pseudorandom, uniformly distributed float value between 0.0 and 1.0 from this random number generator's sequence.- Specified by:
nextFloatin interfaceRandomGenerator- Overrides:
nextFloatin classRandom- Returns:
- random float
-
nextGaussian
public double nextGaussian()Returns the next pseudorandom, Gaussian ("normally") distributed double value with mean 0.0 and standard deviation 1.0 from this random number generator's sequence.- Specified by:
nextGaussianin interfaceRandomGenerator- Overrides:
nextGaussianin classRandom- Returns:
- random double, gaussian distributed
-
nextInt
public int nextInt()Returns the next pseudorandom, uniformly distributed int value from this random number generator's sequence.- Specified by:
nextIntin interfaceRandomGenerator- Overrides:
nextIntin classRandom- Returns:
- random int
-
nextInt
public int nextInt(int n) Returns a pseudorandom, uniformly distributed int value between 0 (inclusive) and the specified value (exclusive), drawn from this random number generator's sequence.- Specified by:
nextIntin interfaceRandomGenerator- Overrides:
nextIntin classRandom- Parameters:
n- the upper limit (exclusive)- Returns:
- random int
-
nextLong
public long nextLong()Returns the next pseudorandom, uniformly distributed long value from this random number generator's sequence.- Specified by:
nextLongin interfaceRandomGenerator- Overrides:
nextLongin classRandom- Returns:
- random long
-
setSeed
public void setSeed(long seed) Sets the seed of this random number generator using a single long seed. -
toString
returns a string representation of this number generator -
getRevision
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Returns:
- the revision
-