首頁 > Java > Java基礎 > 主體

java隨機數random怎麼用

醉折花枝作酒筹
發布: 2022-01-12 15:46:05
原創
64568 人瀏覽過

在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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!