public abstract class BitsStreamGenerator extends Object implements RandomGenerator, Serializable
| Constructor and Description | 
|---|
| BitsStreamGenerator()Creates a new random number generator. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | clear()Clears the cache used by the default implementation of
  nextGaussian. | 
| protected abstract int | next(int bits)Generate next pseudorandom number. | 
| boolean | nextBoolean()Returns the next pseudorandom, uniformly distributed
  booleanvalue from this random number generator's
 sequence. | 
| void | nextBytes(byte[] bytes)Generates random bytes and places them into a user-supplied array. | 
| void | nextBytes(byte[] bytes,
         int start,
         int len)Generates random bytes and places them into a user-supplied array. | 
| double | nextDouble()Returns the next pseudorandom, uniformly distributed
  doublevalue between0.0and1.0from this random number generator's sequence. | 
| float | nextFloat()Returns the next pseudorandom, uniformly distributed  floatvalue between0.0and1.0from this random
 number generator's sequence. | 
| double | nextGaussian()Returns the next pseudorandom, Gaussian ("normally") distributed
  doublevalue with mean0.0and standard
 deviation1.0from this random number generator's sequence. | 
| int | nextInt()Returns the next pseudorandom, uniformly distributed  intvalue from this random number generator's sequence. | 
| int | nextInt(int n)Returns a pseudorandom, uniformly distributed  intvalue
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence. | 
| long | nextLong()Returns the next pseudorandom, uniformly distributed  longvalue from this random number generator's sequence. | 
| long | nextLong(long n)Returns a pseudorandom, uniformly distributed  longvalue
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence. | 
| abstract void | setSeed(int seed)Sets the seed of the underlying random number generator using an
  intseed. | 
| abstract void | setSeed(int[] seed)Sets the seed of the underlying random number generator using an
  intarray seed. | 
| abstract void | setSeed(long seed)Sets the seed of the underlying random number generator using a
  longseed. | 
public BitsStreamGenerator()
public abstract void setSeed(int seed)
int seed.
 Sequences of values generated starting with the same seeds should be identical.
setSeed in interface RandomGeneratorseed - the seed valuepublic abstract void setSeed(int[] seed)
int array seed.
 Sequences of values generated starting with the same seeds should be identical.
setSeed in interface RandomGeneratorseed - the seed valuepublic abstract void setSeed(long seed)
long seed.
 Sequences of values generated starting with the same seeds should be identical.
setSeed in interface RandomGeneratorseed - the seed valueprotected abstract int next(int bits)
This method is the core generation algorithm. It is used by all the
 public generation methods for the various primitive types nextBoolean(), nextBytes(byte[]), nextDouble(),
 nextFloat(), nextGaussian(), nextInt(),
 next(int) and nextLong().
bits - number of random bits to producepublic boolean nextBoolean()
boolean value from this random number generator's
 sequence.nextBoolean in interface RandomGeneratorboolean value from this random number generator's
 sequencepublic double nextDouble()
double value between 0.0 and
 1.0 from this random number generator's sequence.nextDouble in interface RandomGeneratordouble value between 0.0 and
  1.0 from this random number generator's sequencepublic float nextFloat()
float
 value between 0.0 and 1.0 from this random
 number generator's sequence.nextFloat in interface RandomGeneratorfloat
 value between 0.0 and 1.0 from this
 random number generator's sequencepublic double nextGaussian()
double value with mean 0.0 and standard
 deviation 1.0 from this random number generator's sequence.nextGaussian in interface RandomGeneratordouble value with mean 0.0 and
 standard deviation 1.0 from this random number
  generator's sequencepublic int nextInt()
int
 value from this random number generator's sequence.
 All 232 possible int values
 should be produced with  (approximately) equal probability.nextInt in interface RandomGeneratorint
  value from this random number generator's sequencepublic int nextInt(int n)
            throws IllegalArgumentException
int value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.
 This default implementation is copied from Apache Harmony java.util.Random (r929253).
Implementation notes:
(int) ((n * (long) next(31)) >> 31).next(31) % n
 with next(31) values rejected (i.e. regenerated) until a
 value that is larger than the remainder of Integer.MAX_VALUE / n
 is generated. Rejection of this initial segment is necessary to ensure
 a uniform distribution.nextInt in interface RandomGeneratorn - the bound on the random number to be returned.  Must be
 positive.int
 value between 0 (inclusive) and n (exclusive).IllegalArgumentException - if n is not positive.public long nextLong()
long
 value from this random number generator's sequence.  All
 264 possible long values
 should be produced with (approximately) equal probability.nextLong in interface RandomGeneratorlong
value from this random number generator's sequencepublic long nextLong(long n)
              throws IllegalArgumentException
long value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.n - the bound on the random number to be returned.  Must be
 positive.long
 value between 0 (inclusive) and n (exclusive).IllegalArgumentException - if n is not positive.public void clear()
nextGaussian.public void nextBytes(byte[] bytes)
The array is filled with bytes extracted from random integers. This implies that the number of random bytes generated may be larger than the length of the byte array.
nextBytes in interface RandomGeneratorbytes - Array in which to put the generated bytes. Cannot be null.public void nextBytes(byte[] bytes,
             int start,
             int len)
The array is filled with bytes extracted from random integers. This implies that the number of random bytes generated may be larger than the length of the byte array.
bytes - Array in which to put the generated bytes. Cannot be null.start - Index at which to start inserting the generated bytes.len - Number of bytes to insert.OutOfRangeException - if start < 0 or start >= bytes.length.OutOfRangeException - if len < 0 or len > bytes.length - start.Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.