使用Random類生成隨機數
阿新 • • 發佈:2019-02-14
平時我們使用Math類中的random方法生成隨機數時會有重複率高的問題,這是因為random方法其實生成的是偽隨機數。
java中,除了可以通過random 方法來產生隨機數之外,還可以通過一個random類來產生隨機數。通過例項化一個Random物件來建立一個隨機數的生成器。如 Random i=new Random()。通過這條語句就利用了Random類建立了一個隨機數的生成器。不過以這種方法建立隨機數時,與採用Math.random方法產生隨機數的機制不同。利用現在這種方式例項化物件時,Java編譯器會以系統當前的時間作為隨機數生成器的種子。由於時間時時刻刻在變化的。若以這個時間作為生成器的種子,就可以保證生成的隨機數真的是隨機的,其生成的隨機數重複率會大大的降低。
但對於一些特殊應用,如現在需要生成一個概率密度為高斯分佈的雙精度值隨機數時,則通過採用 Random類的方法來建立隨機數相對來說比較簡單一點。