Home » Core Java » math » Math.random Java Example

About Katerina Zamani

Katerina has graduated from the Department of Informatics and Telecommunications in National and Kapodistrian University of Athens (NKUA) and she attends MSc courses in Advanced Information Systems at the same department. Currently, her main academic interests focus on web applications, mobile development, software engineering, databases and telecommunications.

Math.random Java Example

In this article, we will explain Math.random method in Java through examples.

Java provides us Math class, which includes methods with basic numeric operations such as logarithm, square root, etc. One of these methods is random(), which gives us a pseudorandom positive double number greater than or equal to 0.0 and less than 1.0 – [0.0, 1.0).

You can learn more through our Java Math Operators and Math Class Tutorial.

math.random java

In this example, we are going to show how to produce integer and double random numbers between a defined space, via math.random method in Java.

1. Example of Math.random method in Java

Create a java class with name MathRandom Class and paste the following code.

MathRandomClass.java

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package com.javacodegeeks.javacore.mathrandom;
 
public class MathRandomClass {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
        // a simple random number
        double x = Math.random();
        System.out.println("Double between 0.0 and 1.0: x = "+x);
         
        // double between [0.0, 20.0)
        double y = Math.random()*20.0;
        System.out.println("Double between 0.0 and 20.0: y = "+y);
         
        // integer between [3,7]
        int r1 = (int) (Math.random()*5)+3;
        System.out.println("Integer between 3 and 8: r1 = "+r1);
         
        // integer between [-10,10) - maximum 9
        int r2 = (int) (Math.random()*20)-10;
        System.out.println("Integer between -10 and 10: r2 = "+r2);
         
    }
 
}

Now lets explain the code above.

Firstly, we use Java math.random method in order to take a positive signed double value, that belongs to the range [0.0, 0.1). For generating random integer or double numbers between a range, we should multiply and/or sum the appropriate positive and/or negative values in order to achieve the desired result. For example, if we want a random positive, double number greater than or equal to 0.0 but less than 20.0, we should multiply the result of random() method with the double number 20.0. Respectively, if we multiply the result with 5 and add number 3, the range has a minimum value number 3 and as maximum value their sum (5+3). Please notice that the random values are always less than this sum – in our example the range is [3,8). Also notice that for integer values we should cast the result. We can use the same way for negative random numbers etc.

For a better understanding, please look the output of the execution. As you can notice, all the parameters take a value that is into their respective range.

Output

Double between 0.0 and 1.0: x = 0.9749288905833321
Double between 0.0 and 20.0: y = 14.067387697238761
Integer between 3 and 8: r1 = 7
Integer between -10 and 10: r2 = -9

You can learn more about the math.random method in Java in our Java random number generator Example.

3. Download the Source Code

This was a tutorial about Math.random method in Java.

Download
Download the source code of this example: Math.random Java Example

Last updated on May 05th, 2021

Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!

 

1. JPA Mini Book

2. JVM Troubleshooting Guide

3. JUnit Tutorial for Unit Testing

4. Java Annotations Tutorial

5. Java Interview Questions

6. Spring Interview Questions

7. Android UI Design

 

and many more ....

 

Receive Java & Developer job alerts in your Area

 

Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments