1、Math只是個方便使用的工具類,真正生成隨機數(shù)的是java.util.Random這個類,Math里也是使用這個類,只不過是封裝好方便調(diào)用而已。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供贊皇網(wǎng)站建設(shè)、贊皇做網(wǎng)站、贊皇網(wǎng)站設(shè)計、贊皇網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、贊皇企業(yè)網(wǎng)站模板建站服務(wù),10年贊皇做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
2、第一種:Math.random()第二種:new Random()java.lang.Math.Random:調(diào)用這個Math.Random()函數(shù)能夠返回帶正號的double值,取值范圍是[0.0,0),在該范圍內(nèi)(近似)均勻分布。
3、使用單個 long 種子創(chuàng)建一個新隨機數(shù)生成器: public Random(long seed) { setSeed(seed); } next 方法使用它來保存隨機數(shù)生成器的狀態(tài)。 方法摘要 protected int next(int bits) 生成下一個偽隨機數(shù)。
只要是通過算法產(chǎn)生的隨機數(shù)都是偽隨機數(shù)。通過真實隨機事件取得的隨機數(shù)才是真隨機數(shù)。Linux和windows 系統(tǒng)都有自帶的真隨機數(shù)函數(shù),它們是通過外部噪音來實現(xiàn)的,如,敲擊鍵盤的時間間隔,特定的中斷等。
通常取的隨機數(shù)不是憑空生成隨機序列,而是基于特定數(shù)學(xué)算法。這樣一組偽隨機數(shù)序列,每個元素之間近似沒有關(guān)聯(lián)。對于大多數(shù)應(yīng)用程序,偽隨機數(shù)已經(jīng)夠用了。
其實絕對隨機的隨機數(shù)只是一種理想的隨機數(shù),即使計算機怎樣發(fā)展,它也不會產(chǎn)生一串絕對隨機的隨機數(shù)。計算機只能生成相對的隨機數(shù),即偽隨機數(shù)。
Java中的隨機函數(shù)(Random類)主要有以下幾個缺點: 隨機性不足:Random類使用的是偽隨機數(shù)生成算法,在某些情況下,可能會產(chǎn)生可預(yù)測的模式,從而降低了隨機性水平。
相同的種子會產(chǎn)生相同順序的隨機數(shù),你的47這個種子,每次產(chǎn)生的第一個隨機數(shù),永遠(yuǎn)是 2,不會是別的。所以,java的是偽隨機數(shù)哦。
利用random方法來生成隨機數(shù)。在Java語言中生成隨機數(shù)相對來說比較簡單,因為有一個現(xiàn)成的方法可以使用。在Math類中,Java語言提供了一個叫做random的方法。通過這個方法可以讓系統(tǒng)產(chǎn)生隨機數(shù)。
就是說,你剛開始通過i循環(huán)往里面放。比如放到第三個數(shù) 此時i=2,而你判重時是通過循環(huán)j 從0來取數(shù)組的每個值與當(dāng)前隨機數(shù)來比較。而此時你一共存放了三個,所以當(dāng)你 j=i=2 時已經(jīng)把你現(xiàn)有的數(shù)都比較完了。
代碼我就不給你寫了。提供一個思路:隨機生成n個數(shù)(比如1-1000)求這n個數(shù)的和 用每個隨機數(shù)除以n個數(shù)的和得到你要得結(jié)果。
改為int random = (new Double(Math.rint(Math.random()*10))).intValue();Math.rint返回其值最接近參數(shù)并且是整數(shù)的 double 值。如果兩個整數(shù)的 double 值都同樣接近,那么結(jié)果取偶數(shù)。
網(wǎng)頁題目:java產(chǎn)生的偽隨機代碼 java真隨機
網(wǎng)頁地址:http://chinadenli.net/article20/deeggco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、App設(shè)計、外貿(mào)建站、域名注冊、做網(wǎng)站、品牌網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)