java隨機數生成原理
本教程操作環境:windows7系統、java10版,DELL G3電腦。
1、隨機生成數方法
final double v = Math.random();
或者
final int i = new Random().nextInt(int bound);
2、原理解析
(1)Math庫中的static(靜態)方法random()
該方法的作用是產生0到1(包括0,但不包括1)的double值。
(2)使用Random類物件。
該程式可以生成多種不同型別的隨機數字,只需呼叫nextInt()和nextFloat()即可(或呼叫nextLong()或nextDouble()。傳送給nextInt()的引數設定了隨機數的上限,下限為0。
3、例項
// 建構函式(一): 建立一個新的隨機數生成器。 Random() // 建構函式(二): 使用單個 long 種子建立一個新隨機數生成器: public Random(long seed) { setSeed(seed); } next 方法使用它來儲存隨機數生成器的狀態。 Random(long seed) boolean nextBoolean() // 返回下一個“boolean型別”偽隨機數。 void nextBytes(byte[] buf) // 生成隨機位元組並將其置於位元組陣列buf中。 double nextDouble() // 返回一個“[0.0, 1.0) 之間的double型別”的隨機數。 float nextFloat() // 返回一個“[0.0, 1.0) 之間的float型別”的隨機數。 int nextInt() // 返回下一個“int型別”隨機數。 int nextInt(int n) // 返回一個“[0, n) 之間的int型別”的隨機數。 long nextLong() // 返回下一個“long型別”隨機數。 synchronized double nextGaussian() // 返回下一個“double型別”的隨機數,它是呈高斯(“正常地”)分佈的 double 值,其平均值是 0.0,標準偏差是 1.0。 synchronized void setSeed(long seed) // 使用單個 long 種子設定此隨機數生成器的種子。
以上就是java隨機數生成原理,本篇介紹了兩種隨機數生成的方法,並分別對它們的方法原理進行了解析,大家學會後就可以展開隨機數的使用了。更多Java學習指路:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/758/viewspace-2829893/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【java】隨機生成6位的數字Java隨機
- 一文搞懂Java隨機數生成Java隨機
- Java如何生成隨機數 - Random、ThreadLocalRandom、SecureRandomJava隨機randomthread
- python生成隨機數、隨機字串Python隨機字串
- 揭祕Java高效隨機數生成器Java隨機
- JavaScript 生成隨機數JavaScript隨機
- Linux Shell 生成隨機數和隨機字串Linux隨機字串
- matlab 生成隨機數序列Matlab隨機
- C++生成隨機數C++隨機
- 隨機數生成器隨機
- JAVA中生成隨機數Random VS ThreadLocalRandom效能比較Java隨機randomthread
- Matlab 隨機生成兩個數值之間的隨機數Matlab隨機
- 幾種生成隨機數方法隨機
- Python中如何生成隨機數?Python隨機
- 使用Math類生成隨機數隨機
- 更安全的隨機數生成隨機
- Python如何隨機生成1到100的隨機數?Python隨機
- Python生成隨機數random模組Python隨機random
- Golang生成區間隨機整數Golang隨機
- 微信小程式生成隨機數微信小程式隨機
- 巧用物件,生成不重複隨機數物件隨機
- 怎麼用Python生成隨機數Python隨機
- 偽隨機數是什麼?偽隨機數生成方法有哪些?隨機
- java 生成一個隨機整數,範圍從 1 到 10Java隨機
- Java 隨機數探祕Java隨機
- numpy各種生成隨機數的方法隨機
- C# 生成隨機數,呼叫Random方法C#隨機random
- 在指定範圍內生成隨機數隨機
- Solidity陷阱:以太坊的隨機數生成Solid隨機
- 如何生成指定分佈的隨機數隨機
- 生成真隨機數(綜合轉載)隨機
- C++11 隨機數生成器C++隨機
- 生成指定區間的隨機小數隨機
- 生成某個範圍的隨機數隨機
- Java之生成一個隨機驗證碼(數字+大小寫字母)Java隨機
- java1-100隨機數Java隨機
- 隨機生成中文姓名,手機號,郵編,住址(Java)隨機Java
- js可以使用 Math(算數) 物件生成隨機數JS物件隨機