課程
/后端開發
/Java
/Java入門第三季
random的原理是什么?難道不應該重新運行后隨機值就變了嗎?每次都是0 2 5 0 3 6 7 1 5 8
2017-03-31
源自:Java入門第三季 3-8
正在回答
random取值范圍是[0,1)也就是0到1之間但不包括1,如果你取10以內的隨機數可以寫成(int)(Math.random()*10); 如果你想取規定范圍內的隨機數可以用下面方法: (數據類型)(最小值 + Math.random()*(最大值-最小值+1));
貼在eclipse就能看到真正效果了。我這也是這樣。
代碼貼出來
個人觀點:可能和C語言是一樣的,在庫里random是引用了一個隨機數表,這個表是固定的(當然你可以去替換),所以取簡單的隨機數就是從開頭開始往后取。大一上C語言課的時候老師講過這個問題,可以自己手寫一個函數,然后取不同的位置的隨機數,從而達到每次都不一樣的效果(當時是把隨便輸入的數字變成ASC碼轉型然后作為開始的坐標)。
舉報
Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧
1 回答兩個相同的字符串數組,為什么運行后的結果卻不同?
5 回答為什么我不管運行多少次 輸出的課程都是按我輸入的選課號排的 老師不是說是隨機的 每次都不一樣嗎
1 回答第二次修改的運行結果為什么不一樣呢
2 回答為什么我的Set每次取出的順序一樣,不是每次都會變嗎?
3 回答大佬們,為什么我一次隨機出的數組,輸出后數組元素為什么不同?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-08-01
random取值范圍是[0,1)也就是0到1之間但不包括1,如果你取10以內的隨機數可以寫成(int)(Math.random()*10); 如果你想取規定范圍內的隨機數可以用下面方法: (數據類型)(最小值 + Math.random()*(最大值-最小值+1));
2017-05-23
貼在eclipse就能看到真正效果了。我這也是這樣。
2017-04-25
代碼貼出來
2017-03-31
個人觀點:可能和C語言是一樣的,在庫里random是引用了一個隨機數表,這個表是固定的(當然你可以去替換),所以取簡單的隨機數就是從開頭開始往后取。大一上C語言課的時候老師講過這個問題,可以自己手寫一個函數,然后取不同的位置的隨機數,從而達到每次都不一樣的效果(當時是把隨便輸入的數字變成ASC碼轉型然后作為開始的坐標)。