關於如何產生隨機數的幾種方法彙總!(2018.07.08)
在學習java過程中,特別是一些遊戲程式或者登入驗證碼等會涉及到隨機數這個物件,因此對此彙總一下我說了解到的獲得0到100之前的隨機數的幾種方法:
java.util.Random類中提供了多種產生隨機數的方法:
其中使用最多的就是隨機整數,
1.通過Random() 構造方法例項化的物件產生隨機數
Random r=new Random();
特點:每次執行產生的隨機數都不一樣。
例如: Random r = new Random();
int number = r.nextInt(n);
該值介於[0,n)的區間,也就是0到n之間的隨機int值,包含0而不包含n
產生隨機數方法next()和nextInt(int bound)的原始碼截圖:
看不懂就不看了。
2.通過Random(long seed) 構造方法例項化的物件產生隨機數
Random r=new Random(long seed);
特點:seed相同產生的隨機數相同,不同seed之間產生的隨機數也不同。
public void testRandom(){ Random r=new Random(); Random r5=new Random(5); Random r10=new Random(10); List<Integer> list=new ArrayList<Integer>(); list.clear(); System.out.println("1. 利用Random()建構函式產生的隨機數:"); for(int i=0;i<10;i++) { list.add(r.nextInt(100)); } System.out.println(list); System.out.println(""); list.clear(); System.out.println("2. 利用Random(5)建構函式產生的隨機數:"); for(int i=0;i<10;i++) { list.add(r5.nextInt(100)); } System.out.println(list); System.out.println(""); list.clear(); System.out.println("3. 利用Random(10)建構函式產生的隨機數:"); for(int i=0;i<10;i++) { list.add(r10.nextInt(100)); } System.out.println(list); }
3.使用math函式Math.random()
Math.random() 產生的是[0,1.0)的隨機小數。
如果想獲取整數,需要型別轉換,如:
//建立一個0-100的隨機數變數
int number = (int)(Math.random()*100);
相關文章
- GENERATING INTEGER RANDOM NUMBERS(幾種產生隨機數方法的效率分析) (轉)random隨機
- ORACLE產生隨機數的多種方法分享 轉Oracle隨機
- 幾種生成隨機數方法隨機
- Matlab各種隨機數彙總Matlab隨機
- 【筆記】如何產生隨機數筆記隨機
- C 語言產生隨機數的方法隨機
- C語言產生隨機數的方法C語言隨機
- 如何產生指定範圍的隨機數隨機
- R產生隨機數隨機
- 【知識積累】隨機數生成的幾種方法隨機
- 用C語言的rand()和srand()產生偽隨機數的方法總結C語言隨機
- vc中產生隨機數隨機
- c++產生隨機數C++隨機
- 計算機隨機數的產生 (轉)計算機隨機
- Random 專案總結 -11 產生隨機數字random隨機
- 隨機產生0-1之間實數的方法隨機
- Rust中如何產生隨機數或密碼?Rust隨機密碼
- 高效產生不重複的隨機數隨機
- MATLAB中如何產生指定範圍的隨機數Matlab隨機
- Java隨機數的幾種有趣用法Java隨機
- 約瑟夫問題,輸入總人數,自動產生大於0小於n的隨機數隨機
- js隨機產生區間數JS隨機
- matlab產生隨機數或隨機矩陣Matlab隨機矩陣
- 一種快速可預製的隨機陣列產生方法(轉)隨機陣列
- Python產生20個隨機整數的方法詳解!Python隨機
- C語言中產生真隨機數的方法,帶封裝C語言隨機封裝
- 產生唯一隨機碼的方法分析隨機
- PHP生成隨機密碼的幾種方法PHP隨機密碼
- linux生產32位隨機數Linux隨機
- 如何使用excel 2007產生隨機數Excel隨機
- 高效產生一組不重複的隨機數隨機
- Windows 8關機方法彙總Windows
- numpy各種生成隨機數的方法隨機
- JavaScript產生隨機數例項程式碼JavaScript隨機
- 從oracle表中隨機取記錄,產生隨機數和隨機字串Oracle隨機字串
- 產生0到100內的任意隨機數隨機
- 關於golang隨機種子的注意點Golang隨機
- 關於VMware虛擬機器磁碟收縮的幾種方法虛擬機