java中ThreadLocalRandom类和Random类的使用


package frank;
import java.lang.*;
import java.util.*;//工具类一般都在util里面
import java.util.concurrent.ThreadLocalRandom;
/**
 * ThreadLocalRandom Random类
 * */
public class App
{
	public static void main(String[] args)throws Exception
	{
		Random ran = new Random();
		System.out.println(ran.nextInt());//生成一个int类型取值范围的随机数
		System.out.println(ran.nextInt(100));//生成一个0-100的int类型的随机数
		System.out.println(ran.nextFloat());//生成一个Float类型的随机数
		System.out.println(ran.nextDouble());//生成一个Double类型的随机数
		/*
		 * 结果1:
		 * -405998184
		81
		0.7216265
		0.8820657901017879
		 * */
		Random r2 = new Random(50);//种子为50的对象
		Random r3 = new Random(50);//种子为50的对象
		System.out.println("r2.nextInt():"+r2.nextInt()+"-------r3.nextInt():"+r3.nextInt());//如果两个Random对象种子数相同,那么他们生成的结果将是一样。可以使用当前时间最为种子:System.currentTimeMillis()
		System.out.println("---------------多线程环境下使用ThreadLocalRandom类,用法跟Random类基本类似---------------------");
		ThreadLocalRandom tlr = ThreadLocalRandom.current();
		System.out.println(tlr.nextInt(10,50));//生成一个10~50之间的随机数
	}
}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM