public final class RandomStringGenerator extends Object
RandomStringGenerator.Builder
class to see available properties.
// Generates a 20 code point string, using only the letters a-z RandomStringGenerator generator = new RandomStringGenerator.Builder() .withinRange('a', 'z').build(); String randomLetters = generator.generate(20);
// Using Apache Commons RNG for randomness UniformRandomProvider rng = RandomSource.create(...); // Generates a 20 code point string, using only the letters a-z RandomStringGenerator generator = new RandomStringGenerator.Builder() .withinRange('a', 'z') .usingRandom(rng::nextInt) // uses Java 8 syntax .build(); String randomLetters = generator.generate(20);
RandomStringGenerator
instances are thread-safe when using the
default random number generator (RNG). If a custom RNG is set by calling the method
Builder.usingRandom(TextRandomProvider)
, thread-safety
must be ensured externally.
Modifier and Type | Class and Description |
---|---|
static class |
RandomStringGenerator.Builder
A builder for generating
RandomStringGenerator instances. |
Modifier and Type | Method and Description |
---|---|
String |
generate(int length)
Generates a random string, containing the specified number of code points.
|
String |
generate(int minLengthInclusive,
int maxLengthInclusive)
Generates a random string, containing between the minimum (inclusive) and the maximum (inclusive)
number of code points.
|
public String generate(int length)
Code points are randomly selected between the minimum and maximum values defined in the generator. Surrogate and private use characters are not returned, although the resulting string may contain pairs of surrogates that together encode a supplementary character.
Note: the number of char
code units generated will exceed
length
if the string contains supplementary characters. See the
Character
documentation to understand how Java stores Unicode
values.
length
- the number of code points to generateIllegalArgumentException
- if length < 0
public String generate(int minLengthInclusive, int maxLengthInclusive)
minLengthInclusive
- the minimum (inclusive) number of code points to generatemaxLengthInclusive
- the maximum (inclusive) number of code points to generateIllegalArgumentException
- if minLengthInclusive < 0
, or maxLengthInclusive < minLengthInclusive
generate(int)
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.