Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

java
communitycreator

What is RandomStringUtils.randomPrint() in Java?

abhilash

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

randomPrint() is a staticdescribes the methods in Java that can be called without creating an object of the class method of the RandomStringUtils class that is used to generate random string consisting of printable characters.

Characters are chosen from the set of characters that matches the regex class \p{Print}. The regex \p{Print} matches all the characters that can be printed.

There are two variations to this method.

Variation 1

This variation of the method creates a random string whose length is the number of characters specified.

Syntax

public static String randomPrint(int count)

Parameters

  • int count: the length of random string to generate.

Return value

The method returns a random string.

Variation 2

This variation of the method creates a random string whose length is between the inclusive minimum and the exclusive maximum.

Syntax

public static String randomPrint(int minLengthInclusive, int maxLengthExclusive)

Parameters

  • int minLengthInclusive: The inclusive minimum length of the string to generate.

  • int maxLengthExclusive: The exclusive maximum length of the string to generate.

Return Value

The method returns a random string.

How to import RandomStringUtils

The definition of RandomStringUtils can be found in the Apache Commons Lang package, which we can add to the Maven project by adding the following dependency to the pom.xml file:


<dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.12.0</version>
</dependency>

For other versions of the commons-lang package, refer to the Maven Repository.

You can import the RandomStringUtils class as follows.


import org.apache.commons.lang3.RandomStringUtils;

Code

import org.apache.commons.lang3.RandomStringUtils;
public class Main{
public static void main(String[] args){
int count = 5;
System.out.println("The output of RandomStringUtils.randomPrint when the length is " + count + " - " + RandomStringUtils.randomPrint(count));
int minLength = 5;
int maxLength = 10;
System.out.println("The output of RandomStringUtils.randomPrint when the (minlength, maxlength) is (" + minLength + ", " + maxLength + ") - " + RandomStringUtils.randomPrint(minLength, maxLength));
}
}

Example 1

  • count = 5

In the first example, we use the first variation of the method where we specify the exact length of the generated string. The method generates the random string FZGj4 of length five consisting of printable characters.

Example 2

  • minimum length = 5
  • maximum length = 10

In the second example, we use the second variation of the method where we specify the minimum and maximum length of the generated string. The method generates the random string v$C,eI of length six consisting of printable characters.

Expected output

The output of the code is as follows:


The output of RandomStringUtils.randomPrint when the length is 5 - FZGj4
The output of RandomStringUtils.randomPrint when the (minlength, maxlength) is (5, 10) - v$C,eI

The output may differ each time the above code is run.

RELATED TAGS

java
communitycreator

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Keep Exploring