新聞中心
隨機數(shù)的產(chǎn)生在一些代碼中很常用,也是我們必須要掌握的。而java中產(chǎn)生隨機數(shù)的方法主要有三種:
第一種:new Random()
需要借助java.util.Random類來產(chǎn)生一個隨機數(shù)發(fā)生器,也是最常用的一種,構(gòu)造函數(shù)有兩個,Random()和Random(long seed)。第一個就是以當前時間為默認種子,第二個是以指定的種子值進行。產(chǎn)生之后,借助不同的語句產(chǎn)生不同類型的數(shù)。
種子就是產(chǎn)生隨機數(shù)的第一次使用值,機制是通過一個函數(shù),將這個種子的值轉(zhuǎn)化為隨機數(shù)空間中的某一個點上,并且產(chǎn)生的隨機數(shù)均勻的散布在空間中。以后產(chǎn)生的隨機數(shù)都與前一個隨機數(shù)有關。
示例:
public static void main(String[] args) { Random r = new Random(1); for(int i=0 ; i<5 ; i++) { int ran1 = r.nextInt(100); System.out.println(ran1); } }
第二種:Math.random()
Math.random()方法返回的數(shù)值是[0.0,1.0)的double型數(shù)值,由于double類數(shù)的精度很高,可以在一定程度下看做隨機數(shù),借助(int)來進行類型轉(zhuǎn)換就可以得到整數(shù)隨機數(shù)了,代碼如下。
public static void main(String[] args) { int max=100,min=1;4 int ran2 = (int) (Math.random()*(max-min)+min); System.out.println(ran2);6 }
第三種:currentTimeMillis()
currentTimeMillis()方法返回從1970年1月1日0時0分0秒(這與UNIX系統(tǒng)有關)到現(xiàn)在的一個long型的毫秒數(shù),取模之后即可得到所需范圍內(nèi)的隨機數(shù)。
public static void main(String[] args) { int max=100,min=1; long randomNum = System.currentTimeMillis(); int ran3 = (int) (randomNum%(max-min)+min); System.out.println(ran3); }
以上就是java怎么產(chǎn)生隨機數(shù)的詳細內(nèi)容,更多請關注創(chuàng)新互聯(lián)成都網(wǎng)站設計公司其它相關文章!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網(wǎng)站標題:java中產(chǎn)生隨機數(shù)的方法-創(chuàng)新互聯(lián)
轉(zhuǎn)載來于:http://ef60e0e.cn/article/hcoog.html