美文网首页
ThreadLocalRandom类的使用

ThreadLocalRandom类的使用

作者: 千释炎 | 来源:发表于2017-08-25 16:08 被阅读0次

ThreadLocalRandom在java.util.concurrent包下,是一个与当前线程隔离的随机数生成器。它通过为每个线程实例化一个随机数生成器,来减少系统开销和对资源的争用。
通过current方法ThreadLocalRandom实例:

public static ThreadLocalRandom current() {
    if (UNSAFE.getInt(Thread.currentThread(), PROBE) == 0)
        localInit();
    return instance;
}

常用方法如下:

//返回一个整型的伪随机数
public int nextInt();
//返回一个0-bound之间的随机数
public int nextInt(int bound); 
//返回一个origin-bound之间的随机数
public int nextInt(int origin, int bound);
//返回一个long型随机数
public long nextLong();
//返回一个0-bound之间的随机数
public long nextLong(long bound);
//返回一个origin-bound之间的随机数
public long nextLong(long origin, long bound);
//返回一个double类型的随机数
public double nextDouble();
//返回一个0-bound之间的随机数
public long nextDouble(long bound);
//返回一个origin-bound之间的随机数
public long nextDouble(long origin, long bound);
//返回一个boolean类型的随机数
public boolean nextBoolean();
//返回一个float类型的随机数
public float nextFloat();

简单举例:

import java.util.concurrent.ThreadLocalRandom;

public class ThreadLocalRandomDemo {
  public static void main(String args[]) {
    int random=ThreadLocalRandom.current().nextInt();
    System.out.println(random);
  } 
}

相关文章

网友评论

      本文标题:ThreadLocalRandom类的使用

      本文链接:https://www.haomeiwen.com/subject/lvoudxtx.html