How to generate same random number sequence every time?

The java.util.Random class is used to generate random numbers. Java Random class objects are thread safe. It provides several methods to generate random numbers of type integer, double, long, float etc.

Note: Random class objects are not suitable for security sensitive applications so it is better to use java.security.SecureRandom in these cases.

We have to use Random(long seed) constructor to generate same random number sequence every time.

Note: If two Random objects have same seed value, then they will generate same sequence of random numbers.

Example

package com.w3schools;

import java.util.Random;

public class Test {
   public void randomSequence(){
        Random random = new Random(10);
        for(int i=0;i<10;i++){
            System.out.println(random.nextInt(100));
        }
    }
	public static void main(String args[]){
		Test test = new Test();		
		System.out.println("Random Integers:");
		test.randomSequence();
		System.out.println("Random Integers again:");
		test.randomSequence();
	}
}

Output

Random Integers:
13
80
93
90
46
56
97
88
81
14
Random Integers again:
13
80
93
90
46
56
97
88
81
14

Java random class examples