Class RandomUtils
Utility library that supplements the standard Random
class.
Caveat: Instances of Random
are not cryptographically secure.
Please note that the Apache Commons project provides a component dedicated to pseudo-random number generation, namely Commons RNG, that may be a better choice for applications with more stringent requirements (performance and/or correctness).
- Since:
- 3.3
-
Constructor Summary
ConstructorDescriptionRandomUtils
instances should NOT be constructed in standard programming. -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
Returns a random boolean valuestatic byte[]
nextBytes
(int count) Creates an array of random bytes.static double
Returns a random double within 0 - Double.MAX_VALUEstatic double
nextDouble
(double startInclusive, double endExclusive) Returns a random double within the specified range.static float
Returns a random float within 0 - Float.MAX_VALUEstatic float
nextFloat
(float startInclusive, float endExclusive) Returns a random float within the specified range.static int
nextInt()
Returns a random int within 0 - Integer.MAX_VALUEstatic int
nextInt
(int startInclusive, int endExclusive) Returns a random integer within the specified range.static long
nextLong()
Returns a random long within 0 - Long.MAX_VALUEstatic long
nextLong
(long startInclusive, long endExclusive) Returns a random long within the specified range.
-
Constructor Details
-
RandomUtils
public RandomUtils()RandomUtils
instances should NOT be constructed in standard programming. Instead, the class should be used asRandomUtils.nextBytes(5);
.This constructor is public to permit tools that require a JavaBean instance to operate.
-
-
Method Details
-
nextBoolean
public static boolean nextBoolean()Returns a random boolean value
- Returns:
- the random boolean
- Since:
- 3.5
-
nextBytes
public static byte[] nextBytes(int count) Creates an array of random bytes.
- Parameters:
count
- the size of the returned array- Returns:
- the random byte array
- Throws:
IllegalArgumentException
- ifcount
is negative
-
nextInt
public static int nextInt(int startInclusive, int endExclusive) Returns a random integer within the specified range.
- Parameters:
startInclusive
- the smallest value that can be returned, must be non-negativeendExclusive
- the upper bound (not included)- Returns:
- the random integer
- Throws:
IllegalArgumentException
- ifstartInclusive > endExclusive
or ifstartInclusive
is negative
-
nextInt
public static int nextInt()Returns a random int within 0 - Integer.MAX_VALUE
- Returns:
- the random integer
- Since:
- 3.5
- See Also:
-
nextLong
public static long nextLong(long startInclusive, long endExclusive) Returns a random long within the specified range.
- Parameters:
startInclusive
- the smallest value that can be returned, must be non-negativeendExclusive
- the upper bound (not included)- Returns:
- the random long
- Throws:
IllegalArgumentException
- ifstartInclusive > endExclusive
or ifstartInclusive
is negative
-
nextLong
public static long nextLong()Returns a random long within 0 - Long.MAX_VALUE
- Returns:
- the random long
- Since:
- 3.5
- See Also:
-
nextDouble
public static double nextDouble(double startInclusive, double endExclusive) Returns a random double within the specified range.
- Parameters:
startInclusive
- the smallest value that can be returned, must be non-negativeendExclusive
- the upper bound (not included)- Returns:
- the random double
- Throws:
IllegalArgumentException
- ifstartInclusive > endExclusive
or ifstartInclusive
is negative
-
nextDouble
public static double nextDouble()Returns a random double within 0 - Double.MAX_VALUE
- Returns:
- the random double
- Since:
- 3.5
- See Also:
-
nextFloat
public static float nextFloat(float startInclusive, float endExclusive) Returns a random float within the specified range.
- Parameters:
startInclusive
- the smallest value that can be returned, must be non-negativeendExclusive
- the upper bound (not included)- Returns:
- the random float
- Throws:
IllegalArgumentException
- ifstartInclusive > endExclusive
or ifstartInclusive
is negative
-
nextFloat
public static float nextFloat()Returns a random float within 0 - Float.MAX_VALUE
- Returns:
- the random float
- Since:
- 3.5
- See Also:
-