# How do I generate random integers within a specific range in Java?

• Last Updated : 27 Dec, 2019

Given two numbers Min and Max, the task is to generate a random integer within this specific range in Java.

Examples:

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

```Input: Min = 1, Max = 100
Output: 89

Input: Min = 100, Max = 899
Output: 514
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:

• Get the Min and Max which are the specified range.
• Call the nextInt() method of ThreadLocalRandom class (java.util.concurrent.ThreadLocalRandom) and specify the Min and Max value as the parameter as
`ThreadLocalRandom.current().nextInt(min, max + 1);`
• Return the received random value
 `// Java program to generate a random integer``// within this specific range`` ` `import` `java.util.concurrent.ThreadLocalRandom;`` ` `class` `GFG {`` ` `    ``public` `static` `int` `getRandomValue(``int` `Min, ``int` `Max)``    ``{`` ` `        ``// Get and return the random integer``        ``// within Min and Max``        ``return` `ThreadLocalRandom``            ``.current()``            ``.nextInt(Min, Max + ``1``);``    ``}`` ` `    ``// Driver code``    ``public` `static` `void` `main(String[] args)``    ``{`` ` `        ``int` `Min = ``1``, Max = ``100``;`` ` `        ``System.out.println(``"Random value between "``                           ``+ Min + ``" and "` `+ Max + ``": "``                           ``+ getRandomValue(Min, Max));``    ``}``}`
Output:
```Random value between 1 and 100: 35
```
My Personal Notes arrow_drop_up