Class JVMRandom

  • All Implemented Interfaces:
    java.io.Serializable

    @Deprecated(since="2021-04-30")
    public final class JVMRandom
    extends java.util.Random
    Deprecated.
    Commons Lang 2 is in maintenance mode. Commons Lang 3 should be used instead.

    JVMRandom is a wrapper that supports all possible Random methods via the Math.random() method and its system-wide Random object.

    It does this to allow for a Random class in which the seed is shared between all members of the class - a better name would have been SharedSeedRandom.

    N.B. the current implementation overrides the methods Random.nextInt(int) and Random.nextLong() to produce positive numbers ranging from 0 (inclusive) to MAX_VALUE (exclusive).

    Since:
    2.0
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      JVMRandom()
      Deprecated.
      Constructs a new instance.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      boolean nextBoolean()
      Deprecated.
      Returns the next pseudorandom, uniformly distributed boolean value from the Math.random() sequence.
      void nextBytes​(byte[] byteArray)
      Deprecated.
      Unsupported in 2.0.
      double nextDouble()
      Deprecated.
      Synonymous to the Math.random() call.
      float nextFloat()
      Deprecated.
      Returns the next pseudorandom, uniformly distributed float value between 0.0 and 1.0 from the Math.random() sequence.
      double nextGaussian()
      Deprecated.
      Unsupported in 2.0.
      int nextInt()
      Deprecated.
      Returns the next pseudorandom, uniformly distributed int value from the Math.random() sequence.
      int nextInt​(int n)
      Deprecated.
      Returns a pseudorandom, uniformly distributed int value between 0 (inclusive) and the specified value (exclusive), from the Math.random() sequence.
      long nextLong()
      Deprecated.
      Returns the next pseudorandom, uniformly distributed long value from the Math.random() sequence.
      static long nextLong​(long n)
      Deprecated.
      Returns a pseudorandom, uniformly distributed long value between 0 (inclusive) and the specified value (exclusive), from the Math.random() sequence.
      void setSeed​(long seed)
      Deprecated.
      Unsupported in 2.0.
      • Methods inherited from class java.util.Random

        doubles, doubles, doubles, doubles, ints, ints, ints, ints, longs, longs, longs, longs
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • JVMRandom

        public JVMRandom()
        Deprecated.
        Constructs a new instance.
    • Method Detail

      • setSeed

        public void setSeed​(long seed)
        Deprecated.
        Unsupported in 2.0.
        Overrides:
        setSeed in class java.util.Random
        Parameters:
        seed - ignored
        Throws:
        java.lang.UnsupportedOperationException
      • nextGaussian

        public double nextGaussian()
        Deprecated.
        Unsupported in 2.0.
        Overrides:
        nextGaussian in class java.util.Random
        Returns:
        Nothing, this method always throws an UnsupportedOperationException.
        Throws:
        java.lang.UnsupportedOperationException
      • nextBytes

        public void nextBytes​(byte[] byteArray)
        Deprecated.
        Unsupported in 2.0.
        Overrides:
        nextBytes in class java.util.Random
        Parameters:
        byteArray - ignored
        Throws:
        java.lang.UnsupportedOperationException
      • nextInt

        public int nextInt()
        Deprecated.

        Returns the next pseudorandom, uniformly distributed int value from the Math.random() sequence.

        Identical to nextInt(Integer.MAX_VALUE)

        N.B. All values are >= 0.

        Overrides:
        nextInt in class java.util.Random
        Returns:
        the random int
      • nextInt

        public int nextInt​(int n)
        Deprecated.

        Returns a pseudorandom, uniformly distributed int value between 0 (inclusive) and the specified value (exclusive), from the Math.random() sequence.

        Overrides:
        nextInt in class java.util.Random
        Parameters:
        n - the specified exclusive max-value
        Returns:
        the random int
        Throws:
        java.lang.IllegalArgumentException - when n <= 0
      • nextLong

        public long nextLong()
        Deprecated.

        Returns the next pseudorandom, uniformly distributed long value from the Math.random() sequence.

        Identical to nextLong(Long.MAX_VALUE)

        N.B. All values are >= 0.

        Overrides:
        nextLong in class java.util.Random
        Returns:
        the random long
      • nextLong

        public static long nextLong​(long n)
        Deprecated.

        Returns a pseudorandom, uniformly distributed long value between 0 (inclusive) and the specified value (exclusive), from the Math.random() sequence.

        Parameters:
        n - the specified exclusive max-value
        Returns:
        the random long
        Throws:
        java.lang.IllegalArgumentException - when n <= 0
      • nextBoolean

        public boolean nextBoolean()
        Deprecated.

        Returns the next pseudorandom, uniformly distributed boolean value from the Math.random() sequence.

        Overrides:
        nextBoolean in class java.util.Random
        Returns:
        the random boolean
      • nextFloat

        public float nextFloat()
        Deprecated.

        Returns the next pseudorandom, uniformly distributed float value between 0.0 and 1.0 from the Math.random() sequence.

        Overrides:
        nextFloat in class java.util.Random
        Returns:
        the random float
      • nextDouble

        public double nextDouble()
        Deprecated.

        Synonymous to the Math.random() call.

        Overrides:
        nextDouble in class java.util.Random
        Returns:
        the random double