Home > Java > JavaBase > body text

What method is used to generate unique random numbers in java

王林
Release: 2019-11-20 10:48:36
Original
3554 people have browsed it

What method is used to generate unique random numbers in java

Method 1: Call the random() method in the Math class below java.lang to generate random numbers

Create a new file with the suffix name java, and the file name is MyRandom, write the following code in this class:

public class MyRandom {
    public static void main(String[] args) {
        int radom = (int)(Math.random()*10);
        System.out.println(radom);
    }
}
Copy after login

Among them, Math.random() generates a random decimal between 0 and 1.

Generate an integer between 0 and 9: (int)(Math.random()*10)

Generate an integer between 1 and 10 Then you can write: (int)(Math.random()*10 1)

and so on: to generate a number between 0~n, you should write: Math.random()*n

Get a random positive integer with a specified length:

public static int buildRandom(int length) {
    int num = 1;
    double random = Math.random();
    if (random < 0.1) {
        random = random + 0.1;
    } 
    for (int i = 0; i < length; i++) {
        num = num * 10;
    }
    return (int) ((random * num));
}
Copy after login

Method 2: Call the Random class below in java.util. Examples of this class are used To generate a pseudo-random number stream and generate a random integer, call the nextInt() method of the class. Before using the Random class, import java.util.Random under the package. The code is as follows:

import java.util.Random;
public class MyRandom {
    public static void main(String[] args) {
    Random rand = new Random();
    int rInt = rand.nextInt(10);
    System.out.println(rInt);
    }
}
Copy after login

WhereRandom rand = new Random() is to create a new random number generator; rand.nextInt(int n) is taken from the sequence of this random number generator , an int value uniformly distributed between 0 (inclusive) and the specified value n (exclusive).

In Java, in the specified integer range class, the loop generates different random numbers.

Take the example of generating 6 different random integers within 20 digits as follows:

public class MyRandom {
    public static void main(String[] args) {
        int n = 20;
        Random rand = new Random();
        boolean[] bool = new boolean[n];
        int randInt = 0;
        for(int i = 0; i < 6 ; i++) {
            do {
            randInt = rand.nextInt(n);
        }while(bool[randInt]);
        bool[randInt] = true;
        System.out.println(randInt);
        }
    }
}
Copy after login

Among them, a Boolean variable array is used to store whether the number is generated. After generation, the number becomes true as the corresponding Boolean value in the table below the Boolean array. The next time the number is generated, it will enter the do...while loop again to generate numbers until a number that has not been generated before is generated.

Recommended tutorial: Getting started with java development

The above is the detailed content of What method is used to generate unique random numbers in java. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template