Java之獲取隨機數的4種方法

鄭清發表於2018-08-25

 

①Math.random(): 獲取隨機小數範圍:[0.0,1.0)      ==》返回的值是double型別
②Random類    
         構造方法:Random() : 建議使用無參構造方法
         方法:int nextInt(int n) : 獲取 [0,n) 範圍的隨機整數
③ThreadLocalRandom  (jdk1.7開始出現)
          建立物件: static ThreadLocalRandom current()
          方法:int nextInt(int a,int b) : 獲取 [a,b) 範圍的隨機整數
④UUID類
         方法:static UUID randomUUID():獲取型別 4(偽隨機生成的)UUID 的靜態工廠。 使用加密的強偽隨機數生成器生成該 UUID。
        ===》即 獲取隨機的字串,該字串每次獲取都不會重複 

ex:

/*
 * 需求:生成-10~10範圍的隨機整數
 */
public class Demo {
	public static void main(String[] args) {
		int i1 = (int) (Math.random()*21-10);//Math.random():獲取[0.0,1.0)的隨機小數
		System.out.println(i1);
		
		Random random = new Random();
		int i2 = random.nextInt(21) - 10;//random.nextInt(21):獲取[0,21)的隨機整數
		System.out.println(i2);

		ThreadLocalRandom threadLocalRandom = ThreadLocalRandom.current();
		int i3 = threadLocalRandom.nextInt(-10, 10);//獲取[-10,10)的隨機整數
		System.out.println(i3);
		
		UUID uuid = UUID.randomUUID();
		String uuidStr = uuid.toString();
		System.out.println(uuidStr);
	}

}

執行結果圖:

相關文章