Home > Java > javaTutorial > body text

How to use ThreadLocalRandom function to generate random numbers in Java

WBOY
Release: 2023-06-26 15:03:27
Original
1710 people have browsed it

Commonly used random number generation methods in Java include the Random class and Math.random() method, but for multi-threaded programs, thread safety is very important. Therefore, in a multi-threaded environment, using the ThreadLocalRandom class for random number generation is a more appropriate choice.

ThreadLocalRandom is a new feature introduced in Java 7 that provides a thread-localized random number generator. In a multi-threaded environment, each thread will create its own ThreadLocalRandom instance, avoiding thread competition issues and thus improving the concurrency performance of the program.

It is very simple to use ThreadLocalRandom to generate random numbers. You only need to call the nextInt method it provides. This method has two overloaded versions:

  1. nextInt()
    This method will return a random integer of type int. The range of this integer is negative and positive int values.
  2. nextInt(int bound)
    This method will return a random int type integer, the range of this integer is 0 to bound-1.

In addition, ThreadLocalRandom provides other types of random number generation methods: nextLong, nextFloat and nextBoolean, etc. The use of these methods is similar to nextInt.

The following is a sample code that uses ThreadLocalRandom to generate random numbers:

import java.util.concurrent.ThreadLocalRandom;

public class RandomDemo {
    public static void main(String[] args) {
        // 生成一个范围在0-99的随机整数
        int randomNum = ThreadLocalRandom.current().nextInt(100);
        System.out.println("随机数是:" + randomNum);
    }
}
Copy after login

We can see in the output that the random numbers are different each time the program is run. This also confirms the thread safety and reliability of ThreadLocalRandom's random number generator.

In short, in a Java multi-threaded environment, using ThreadLocalRandom is safer, more efficient, and more convenient than using the Random class. Therefore, when writing multi-threaded programs, you should give priority to using ThreadLocalRandom to generate random numbers.

The above is the detailed content of How to use ThreadLocalRandom function to generate random numbers in Java. For more information, please follow other related articles on the PHP Chinese website!

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