Java中的Random()函數(shù)及兩種構(gòu)造方法
Java中存在著兩種Random函數(shù):
- java.lang.Math.Random;
調(diào)用這個Math.Random()函數(shù)能夠返回帶正號的double值,該值大于等于0.0且小于1.0,即取值范圍是[0.0,1.0)的左閉右開區(qū)間,返回值是一個偽隨機(jī)選擇的數(shù),在該范圍內(nèi)(近似)均勻分布。
- java.util.Random
下面Random()的兩種構(gòu)造方法:
Random():創(chuàng)建一個新的隨機(jī)數(shù)生成器。
Random(long seed):使用單個 long 種子創(chuàng)建一個新的隨機(jī)數(shù)生成器。
我們可以在構(gòu)造Random對象的時候指定種子(這里指定種子有何作用,請接著往下看),如:Random r1 = new Random(20);或者默認(rèn)當(dāng)前系統(tǒng)時間的毫秒數(shù)作為種子數(shù):Random r1 = new Random();
需要說明的是:你在創(chuàng)建一個Random對象的時候可以給定任意一個合法的種子數(shù),種子數(shù)只是隨機(jī)算法的起源數(shù)字,和生成的隨機(jī)數(shù)的區(qū)間沒有任何關(guān)系。如下面的Java代碼:
Random rand =new Random(25); int i; i=rand.nextInt(100);
初始化時25并沒有起直接作用(注意:不是沒有起作用),rand.nextInt(100);中的100是隨機(jī)數(shù)的上限,產(chǎn)生的隨機(jī)數(shù)為0-100的整數(shù),不包括100。
在實(shí)踐中,java.util.Random 類總是優(yōu)于 java.lang.Math.random()。
總結(jié)
以上所述是小編給大家介紹的Java中的Random()函數(shù)及兩種構(gòu)造方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Springboot 跨域配置無效及接口訪問報(bào)錯的解決方法
這篇文章主要介紹了Springboot 跨域配置無效及接口訪問報(bào)錯的解決方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
Springboot集成Proguard生成混淆jar包方式
本文介紹了兩種Java代碼混淆工具:ClassFinal和ProGuard,ClassFinal是一個字節(jié)碼加密工具,但需要額外的加密包,使用復(fù)雜,ProGuard是一款開源的Java代碼混淆工具,可以有效地提高代碼的安全性,但對Spring框架的注解處理不夠完善2024-11-11
基于Mybatis Plus實(shí)現(xiàn)多表分頁查詢的示例代碼
這篇文章主要介紹了基于Mybatis Plus實(shí)現(xiàn)多表分頁查詢的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
java中Class.getMethods()和Class.getDeclaredMethods()方法的區(qū)別
這篇文章主要介紹了java中Class.getMethods()和Class.getDeclaredMethods()方法的區(qū)別 ,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2018-09-09
MybatisPlus?構(gòu)造器wrapper的使用與原理解析
本次我們介紹了MybatisPlus?構(gòu)造器wrapper的使用方式及其易錯點(diǎn),同時也針對其運(yùn)行的原理進(jìn)行了解釋,只有深刻理解了它的原理,我們才能更靈活的使用,并且更快的排查出問題,感興趣的朋友跟隨小編一起看看吧2024-05-05

