Class RandomStringUtils


  • public class RandomStringUtils
    extends java.lang.Object
    Generates random Strings.

    Use secure() to get the singleton instance based on SecureRandom() which uses a secure random number generator implementing the default random number algorithm.

    Use secureStrong() to get the singleton instance based on SecureRandom.getInstanceStrong() which uses an instance that was selected by using the algorithms/providers specified in the securerandom.strongAlgorithms Security property.

    Use insecure() to get the singleton instance based on ThreadLocalRandom.current() which is not cryptographically secure. In addition, instances do not use a cryptographically random seed unless the system property java.util.secureRandomSeed is set to true.

    Starting in version 3.17.0, the method secure() uses SecureRandom() instead of SecureRandom.getInstanceStrong(), and adds secureStrong().

    Starting in version 3.16.0, this class uses secure() for static methods and adds insecure().

    Starting in version 3.15.0, this class uses SecureRandom.getInstanceStrong() for static methods.

    Before version 3.15.0, this class used ThreadLocalRandom.current() for static methods, which is not cryptographically secure.

    RandomStringUtils is intended for simple use cases. For more advanced use cases consider using Apache Commons Text's RandomStringGenerator instead.

    The Apache Commons project provides Commons RNG dedicated to pseudo-random number generation, that may be a better choice for applications with more stringent requirements (performance and/or correctness).

    Note that private high surrogate characters are ignored. These are Unicode characters that fall between the values 56192 (db80) and 56319 (dbff) as we don't know how to handle them. High and low surrogates are correctly dealt with - that is if a high surrogate is randomly chosen, 55296 (d800) to 56191 (db7f) then it is followed by a low surrogate. If a low surrogate is chosen, 56320 (dc00) to 57343 (dfff) then it is placed after a randomly chosen high surrogate.

    #ThreadSafe#

    Since:
    1.0
    See Also:
    secure(), secureStrong(), insecure(), SecureRandom(), SecureRandom.getInstanceStrong(), ThreadLocalRandom.current(), RandomUtils
    • Constructor Summary

      Constructors 
      Constructor Description
      RandomStringUtils()
      Deprecated.
      TODO Make private in 4.0.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      static RandomStringUtils insecure()
      Gets the singleton instance based on ThreadLocalRandom.current(); which is not cryptographically secure; use secure() to use an algorithms/providers specified in the securerandom.strongAlgorithms Security property.
      java.lang.String next​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String next​(int count, boolean letters, boolean numbers)
      Creates a random string whose length is the number of characters specified.
      java.lang.String next​(int count, char... chars)
      Creates a random string whose length is the number of characters specified.
      java.lang.String next​(int count, int start, int end, boolean letters, boolean numbers)
      Creates a random string whose length is the number of characters specified.
      java.lang.String next​(int count, int start, int end, boolean letters, boolean numbers, char... chars)
      Creates a random string based on a variety of options, using default source of randomness.
      java.lang.String next​(int count, java.lang.String chars)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextAlphabetic​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextAlphabetic​(int minLengthInclusive, int maxLengthExclusive)
      Creates a random string whose length is between the inclusive minimum and the exclusive maximum.
      java.lang.String nextAlphanumeric​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextAlphanumeric​(int minLengthInclusive, int maxLengthExclusive)
      Creates a random string whose length is between the inclusive minimum and the exclusive maximum.
      java.lang.String nextAscii​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextAscii​(int minLengthInclusive, int maxLengthExclusive)
      Creates a random string whose length is between the inclusive minimum and the exclusive maximum.
      java.lang.String nextGraph​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextGraph​(int minLengthInclusive, int maxLengthExclusive)
      Creates a random string whose length is between the inclusive minimum and the exclusive maximum.
      java.lang.String nextNumeric​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextNumeric​(int minLengthInclusive, int maxLengthExclusive)
      Creates a random string whose length is between the inclusive minimum and the exclusive maximum.
      java.lang.String nextPrint​(int count)
      Creates a random string whose length is the number of characters specified.
      java.lang.String nextPrint​(int minLengthInclusive, int maxLengthExclusive)
      Creates a random string whose length is between the inclusive minimum and the exclusive maximum.
      static java.lang.String random​(int count)
      Deprecated.
      static java.lang.String random​(int count, boolean letters, boolean numbers)
      Deprecated.
      static java.lang.String random​(int count, char... chars)
      Deprecated.
      static java.lang.String random​(int count, int start, int end, boolean letters, boolean numbers)
      Deprecated.
      static java.lang.String random​(int count, int start, int end, boolean letters, boolean numbers, char... chars)
      Deprecated.
      static java.lang.String random​(int count, int start, int end, boolean letters, boolean numbers, char[] chars, java.util.Random random)
      Creates a random string based on a variety of options, using supplied source of randomness.
      static java.lang.String random​(int count, java.lang.String chars)
      Deprecated.
      static java.lang.String randomAlphabetic​(int count)
      Deprecated.
      static java.lang.String randomAlphabetic​(int minLengthInclusive, int maxLengthExclusive)
      Deprecated.
      static java.lang.String randomAlphanumeric​(int count)
      Deprecated.
      static java.lang.String randomAlphanumeric​(int minLengthInclusive, int maxLengthExclusive)
      Deprecated.
      static java.lang.String randomAscii​(int count)
      Deprecated.
      static java.lang.String randomAscii​(int minLengthInclusive, int maxLengthExclusive)
      Deprecated.
      static java.lang.String randomGraph​(int count)
      Deprecated.
      static java.lang.String randomGraph​(int minLengthInclusive, int maxLengthExclusive)
      Deprecated.
      static java.lang.String randomNumeric​(int count)
      Deprecated.
      static java.lang.String randomNumeric​(int minLengthInclusive, int maxLengthExclusive)
      Deprecated.
      static java.lang.String randomPrint​(int count)
      Deprecated.
      static java.lang.String randomPrint​(int minLengthInclusive, int maxLengthExclusive)
      Deprecated.
      static RandomStringUtils secure()
      Gets the singleton instance based on SecureRandom() which uses a secure random number generator (RNG) implementing the default random number algorithm.
      static RandomStringUtils secureStrong()
      Gets the singleton instance based on SecureRandom.getInstanceStrong() which uses an algorithms/providers specified in the securerandom.strongAlgorithms Security property.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • RandomStringUtils

        @Deprecated
        public RandomStringUtils()
        Deprecated.
        TODO Make private in 4.0.
        RandomStringUtils instances should NOT be constructed in standard programming. Instead, the class should be used as RandomStringUtils.random(5);.

        This constructor is public to permit tools that require a JavaBean instance to operate.

    • Method Detail

      • insecure

        public static RandomStringUtils insecure()
        Gets the singleton instance based on ThreadLocalRandom.current(); which is not cryptographically secure; use secure() to use an algorithms/providers specified in the securerandom.strongAlgorithms Security property.

        The method ThreadLocalRandom.current() is called on-demand.

        Returns:
        the singleton instance based on ThreadLocalRandom.current().
        Since:
        3.16.0
        See Also:
        ThreadLocalRandom.current(), secure()
      • random

        @Deprecated
        public static java.lang.String random​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of all characters.

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • random

        @Deprecated
        public static java.lang.String random​(int count,
                                              boolean letters,
                                              boolean numbers)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of alpha-numeric characters as indicated by the arguments.

        Parameters:
        count - the length of random string to create
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • random

        @Deprecated
        public static java.lang.String random​(int count,
                                              char... chars)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters specified.

        Parameters:
        count - the length of random string to create
        chars - the character array containing the set of characters to use, may be null
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • random

        @Deprecated
        public static java.lang.String random​(int count,
                                              int start,
                                              int end,
                                              boolean letters,
                                              boolean numbers)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of alpha-numeric characters as indicated by the arguments.

        Parameters:
        count - the length of random string to create
        start - the position in set of chars to start at
        end - the position in set of chars to end before
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • random

        @Deprecated
        public static java.lang.String random​(int count,
                                              int start,
                                              int end,
                                              boolean letters,
                                              boolean numbers,
                                              char... chars)
        Deprecated.
        Creates a random string based on a variety of options, using default source of randomness.

        This method has exactly the same semantics as random(int,int,int,boolean,boolean,char[],Random), but instead of using an externally supplied source of randomness, it uses the internal static Random instance.

        Parameters:
        count - the length of random string to create
        start - the position in set of chars to start at
        end - the position in set of chars to end before
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        chars - the set of chars to choose randoms from. If null, then it will use the set of all chars.
        Returns:
        the random string
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if there are not (end - start) + 1 characters in the set array.
        java.lang.IllegalArgumentException - if count < 0.
      • random

        public static java.lang.String random​(int count,
                                              int start,
                                              int end,
                                              boolean letters,
                                              boolean numbers,
                                              char[] chars,
                                              java.util.Random random)
        Creates a random string based on a variety of options, using supplied source of randomness.

        If start and end are both 0, start and end are set to ' ' and 'z', the ASCII printable characters, will be used, unless letters and numbers are both false, in which case, start and end are set to 0 and Character.MAX_CODE_POINT.

        If set is not null, characters between start and end are chosen.

        This method accepts a user-supplied Random instance to use as a source of randomness. By seeding a single Random instance with a fixed seed and using it for each call, the same random sequence of strings can be generated repeatedly and predictably.

        Parameters:
        count - the length of random string to create
        start - the position in set of chars to start at (inclusive)
        end - the position in set of chars to end before (exclusive)
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        chars - the set of chars to choose randoms from, must not be empty. If null, then it will use the set of all chars.
        random - a source of randomness.
        Returns:
        the random string
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if there are not (end - start) + 1 characters in the set array.
        java.lang.IllegalArgumentException - if count < 0 or the provided chars array is empty.
        Since:
        2.0
      • random

        @Deprecated
        public static java.lang.String random​(int count,
                                              java.lang.String chars)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters specified by the string, must not be empty. If null, the set of all characters is used.

        Parameters:
        count - the length of random string to create
        chars - the String containing the set of characters to use, may be null, but must not be empty
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0 or the string is empty.
      • randomAlphabetic

        @Deprecated
        public static java.lang.String randomAlphabetic​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • randomAlphabetic

        @Deprecated
        public static java.lang.String randomAlphabetic​(int minLengthInclusive,
                                                        int maxLengthExclusive)
        Deprecated.
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z).

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • randomAlphanumeric

        @Deprecated
        public static java.lang.String randomAlphanumeric​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z) and the digits 0-9.

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • randomAlphanumeric

        @Deprecated
        public static java.lang.String randomAlphanumeric​(int minLengthInclusive,
                                                          int maxLengthExclusive)
        Deprecated.
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z) and the digits 0-9.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • randomAscii

        @Deprecated
        public static java.lang.String randomAscii​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters whose ASCII value is between 32 and 126 (inclusive).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • randomAscii

        @Deprecated
        public static java.lang.String randomAscii​(int minLengthInclusive,
                                                   int maxLengthExclusive)
        Deprecated.
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of characters whose ASCII value is between 32 and 126 (inclusive).

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • randomGraph

        @Deprecated
        public static java.lang.String randomGraph​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters which match the POSIX [:graph:] regular expression character class. This class contains all visible ASCII characters (i.e. anything except spaces and control characters).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.5
      • randomGraph

        @Deprecated
        public static java.lang.String randomGraph​(int minLengthInclusive,
                                                   int maxLengthExclusive)
        Deprecated.
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of \p{Graph} characters.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • randomNumeric

        @Deprecated
        public static java.lang.String randomNumeric​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of numeric characters.

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • randomNumeric

        @Deprecated
        public static java.lang.String randomNumeric​(int minLengthInclusive,
                                                     int maxLengthExclusive)
        Deprecated.
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of \p{Digit} characters.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • randomPrint

        @Deprecated
        public static java.lang.String randomPrint​(int count)
        Deprecated.
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters which match the POSIX [:print:] regular expression character class. This class includes all visible ASCII characters and spaces (i.e. anything except control characters).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.5
      • randomPrint

        @Deprecated
        public static java.lang.String randomPrint​(int minLengthInclusive,
                                                   int maxLengthExclusive)
        Deprecated.
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of \p{Print} characters.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • secure

        public static RandomStringUtils secure()
        Gets the singleton instance based on SecureRandom() which uses a secure random number generator (RNG) implementing the default random number algorithm.

        The method SecureRandom() is called on-demand.

        Returns:
        the singleton instance based on SecureRandom().
        Since:
        3.16.0
        See Also:
        SecureRandom()
      • secureStrong

        public static RandomStringUtils secureStrong()
        Gets the singleton instance based on SecureRandom.getInstanceStrong() which uses an algorithms/providers specified in the securerandom.strongAlgorithms Security property.

        The method SecureRandom.getInstanceStrong() is called on-demand.

        Returns:
        the singleton instance based on SecureRandom.getInstanceStrong().
        Since:
        3.17.0
        See Also:
        SecureRandom.getInstanceStrong()
      • next

        public java.lang.String next​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of all characters.

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.16.0
      • next

        public java.lang.String next​(int count,
                                     boolean letters,
                                     boolean numbers)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of alpha-numeric characters as indicated by the arguments.

        Parameters:
        count - the length of random string to create
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.16.0
      • next

        public java.lang.String next​(int count,
                                     char... chars)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters specified.

        Parameters:
        count - the length of random string to create
        chars - the character array containing the set of characters to use, may be null
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.16.0
      • next

        public java.lang.String next​(int count,
                                     int start,
                                     int end,
                                     boolean letters,
                                     boolean numbers)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of alpha-numeric characters as indicated by the arguments.

        Parameters:
        count - the length of random string to create
        start - the position in set of chars to start at
        end - the position in set of chars to end before
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.16.0
      • next

        public java.lang.String next​(int count,
                                     int start,
                                     int end,
                                     boolean letters,
                                     boolean numbers,
                                     char... chars)
        Creates a random string based on a variety of options, using default source of randomness.

        This method has exactly the same semantics as random(int,int,int,boolean,boolean,char[],Random), but instead of using an externally supplied source of randomness, it uses the internal static Random instance.

        Parameters:
        count - the length of random string to create
        start - the position in set of chars to start at
        end - the position in set of chars to end before
        letters - if true, generated string may include alphabetic characters
        numbers - if true, generated string may include numeric characters
        chars - the set of chars to choose randoms from. If null, then it will use the set of all chars.
        Returns:
        the random string
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if there are not (end - start) + 1 characters in the set array.
        java.lang.IllegalArgumentException - if count < 0.
      • next

        public java.lang.String next​(int count,
                                     java.lang.String chars)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters specified by the string, must not be empty. If null, the set of all characters is used.

        Parameters:
        count - the length of random string to create
        chars - the String containing the set of characters to use, may be null, but must not be empty
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0 or the string is empty.
        Since:
        3.16.0
      • nextAlphabetic

        public java.lang.String nextAlphabetic​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • nextAlphabetic

        public java.lang.String nextAlphabetic​(int minLengthInclusive,
                                               int maxLengthExclusive)
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z).

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • nextAlphanumeric

        public java.lang.String nextAlphanumeric​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z) and the digits 0-9.

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • nextAlphanumeric

        public java.lang.String nextAlphanumeric​(int minLengthInclusive,
                                                 int maxLengthExclusive)
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of Latin alphabetic characters (a-z, A-Z) and the digits 0-9.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • nextAscii

        public java.lang.String nextAscii​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters whose ASCII value is between 32 and 126 (inclusive).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • nextAscii

        public java.lang.String nextAscii​(int minLengthInclusive,
                                          int maxLengthExclusive)
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of characters whose ASCII value is between 32 and 126 (inclusive).

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • nextGraph

        public java.lang.String nextGraph​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters which match the POSIX [:graph:] regular expression character class. This class contains all visible ASCII characters (i.e. anything except spaces and control characters).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.5
      • nextGraph

        public java.lang.String nextGraph​(int minLengthInclusive,
                                          int maxLengthExclusive)
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of \p{Graph} characters.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • nextNumeric

        public java.lang.String nextNumeric​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of numeric characters.

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
      • nextNumeric

        public java.lang.String nextNumeric​(int minLengthInclusive,
                                            int maxLengthExclusive)
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of \p{Digit} characters.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.5
      • nextPrint

        public java.lang.String nextPrint​(int count)
        Creates a random string whose length is the number of characters specified.

        Characters will be chosen from the set of characters which match the POSIX [:print:] regular expression character class. This class includes all visible ASCII characters and spaces (i.e. anything except control characters).

        Parameters:
        count - the length of random string to create
        Returns:
        the random string
        Throws:
        java.lang.IllegalArgumentException - if count < 0.
        Since:
        3.5, 3.16.0
      • nextPrint

        public java.lang.String nextPrint​(int minLengthInclusive,
                                          int maxLengthExclusive)
        Creates a random string whose length is between the inclusive minimum and the exclusive maximum.

        Characters will be chosen from the set of \p{Print} characters.

        Parameters:
        minLengthInclusive - the inclusive minimum length of the string to generate
        maxLengthExclusive - the exclusive maximum length of the string to generate
        Returns:
        the random string
        Since:
        3.16.0
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object