首頁  >  文章  >  Java  >  java隨機數random怎麼用

java隨機數random怎麼用

醉折花枝作酒筹
醉折花枝作酒筹原創
2021-06-16 14:48:4164762瀏覽

在java中,random的用法是「static double random()」。 “random()”方法用於傳回隨機數,隨機數範圍為“0.0=

java隨機數random怎麼用

本教學操作環境:windows7系統、java10版、DELL G3電腦。

在Java中產生隨機數有幾種方式

Java.util.UUID-產生唯一的字串

可以透過UUID類別產生唯一的字符串,並且是全域唯一,所有的電腦產生的字串都是不同的。它的使用方式如下:

String uuid  =  UUID.randomUUID().toString();

Math.random()

透過Math.random()方法可以產生[0,1)區間中double類型的數字,可以為0,但是小於1。其他通常的使用方式如下

生成double随机数:Math.random()
生成[0,100)之间的整数:(int)(Math.random()*100)

進入Math.random()的原始碼中它的具體使用是呼叫的Random的nextDouble()方法。

public static double random() {
        return RandomNumberGeneratorHolder.randomNumberGenerator.nextDouble();
}
    
private static final class RandomNumberGeneratorHolder {
   static final Random randomNumberGenerator = new Random();
}

Random類別

Random類別產生隨機的數,它的主要方法如下

java隨機數random怎麼用

下面的範例是利用Random產生5個[0,100)內的隨機數

Random random = new Random();

//生成5个 0到100之间的数字。
System.out.println("生成5个 0到100之间的数字。 nextInt(100)");
for (int n = 0; n < 5; n++) {
    System.out.print(random.nextInt(100)+", ");
}

Random的使用注意事項

Random產生隨機數有兩種方式,一種不帶種子,一種是帶種子的

有下面這樣一段程式碼,定義兩個隨機數,設定相同的種子,傳回100以內的隨機整數,兩個Random產生的隨機數順序是一樣的。

Random random = new Random(100);
Random random1 = new Random(100);

//随机生成5个int数字  next()
System.out.println("随机生成5个int数字  next()");
for (int n = 0; n < 5; n++) {
    System.out.println(random.nextInt(100)+" "+random1.nextInt(100));
}

输出的结果如下:
15,15
50,50
74,74
88,88
91,91

Random的隨機數其實偽隨機數,只要種子確定,那么生成的隨機數順序是一致的,所以避免例子中兩個Random實例產生了順序一致的隨機數。一般有兩種方式

  • 產生Random實例的時候不指定種子。

  • 產生一個單例的Random類,然後產生隨機數。

相關影片教學推薦:Java影片教學

以上是java隨機數random怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn