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