最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

150天打卡day05_隨機(jī)數(shù)的學(xué)習(xí)

2021-03-01 17:28 作者:關(guān)阿姨的Java日記  | 我要投稿

本節(jié)內(nèi)容

  • 什么是隨機(jī)數(shù)?

  • 隨機(jī)數(shù)的用途

  • 隨機(jī)數(shù)的使用

  • 隨機(jī)數(shù)案例_大球吃小球

隨機(jī)數(shù)

今天要學(xué)的隨機(jī)數(shù),在生活過程中很常見,例如丟硬幣,擲篩子等等,生活中的隨機(jī)真的是隨機(jī),但是計(jì)算機(jī)中的隨機(jī)并不是真的隨機(jī),計(jì)算機(jī)專家通過算法實(shí)現(xiàn)寫了一個(gè)隨機(jī)數(shù)發(fā)生器,就是用固定的套路寫的,其實(shí)就是利用隨機(jī)數(shù)發(fā)生器提供的也是偽隨機(jī)數(shù),有同學(xué)想了解偽隨機(jī)數(shù)請(qǐng)參考注解內(nèi)容

隨機(jī)數(shù)的用途

隨機(jī)數(shù)有著廣泛的用途,比如:測(cè)試,游戲,仿真以及安全領(lǐng)域都需要用到隨機(jī)數(shù),

最常見的是在用戶登錄或者注冊(cè)的時(shí)候通常需要我們?nèi)ポ斎胍恍?yàn)證碼

他主要的作用是為了防止有人頻繁的注冊(cè)而造成一些惡意的破壞

所以呢驗(yàn)證碼一般都是拿隨機(jī)數(shù)去生成的。

另外我們公司在進(jìn)行抽獎(jiǎng)的時(shí)候,往往也會(huì)通過隨機(jī)數(shù)來實(shí)現(xiàn),


如何使用隨機(jī)數(shù)

在Java中? 實(shí)現(xiàn)隨機(jī)數(shù)其實(shí)是比較簡(jiǎn)單的,因?yàn)橐呀?jīng)有現(xiàn)成的工具以及類了,

通常我們有兩種方法:

  • 一種是通過Math.random()方法來隨機(jī)生成0~1之間的一個(gè)小數(shù)

  • 還有一種是通過Random這個(gè)類,他是一個(gè)專門的API工具,可以幫助我們生成隨機(jī)數(shù),他的功能會(huì)更加強(qiáng)大一些

Math類

Java?中的 +、-、*、/ 和 % 等基本算術(shù)運(yùn)算符不能進(jìn)行更復(fù)雜的數(shù)學(xué)運(yùn)算,例如,三角函數(shù)、對(duì)數(shù)運(yùn)算、指數(shù)運(yùn)算等。于是 Java 提供了 Math 工具類來完成這些復(fù)雜的運(yùn)算。

在 Java 中?Math 類封裝了常用的數(shù)學(xué)運(yùn)算,提供了基本的數(shù)學(xué)操作,如指數(shù)、對(duì)數(shù)、平方根和三角函數(shù)等。

Math 類位于 java.lang 包,并且 Math 類中的所有方法都是類方法,可以直接通過類名來調(diào)用它們。

常見的使用

1.常量PI是π、E自然對(duì)數(shù)

2.函數(shù)sin(),cos()

3.生成隨機(jī)數(shù)的random()方法

Math.random方法

其實(shí)在Math類中也有一個(gè)random方法,該random方法的工作是生成一個(gè)[0,1)區(qū)間的隨機(jī)小數(shù)。(0到1之間不包含1的小數(shù))

通過閱讀Math類的源代碼可以發(fā)現(xiàn),Math類中的random方法就是直接調(diào)用Random類中的nextDouble方法實(shí)現(xiàn)的。

只是random方法的調(diào)用比較簡(jiǎn)單,所以很多程序員都習(xí)慣使用Math類的random方法來生成隨機(jī)數(shù)字。

Java的Math類提供了random()用于產(chǎn)生隨機(jī)數(shù),返回值是一個(gè)0-1之間的隨機(jī)小數(shù)。[0,1)

由于日常中生成整數(shù)會(huì)比較多,所以經(jīng)常得需要進(jìn)行強(qiáng)轉(zhuǎn),而且如果要算某個(gè)范圍內(nèi)的隨機(jī)數(shù),有個(gè)規(guī)律,隨機(jī)數(shù)乘以(最大值-最小值)+最小值

案例

生成 [1,10) 隨機(jī)整數(shù),注意類型之間的轉(zhuǎn)換

練習(xí):

Random類

其實(shí)任何邏輯都可以忘記,只需要記住咱們的公式就可以了如果還嫌棄麻煩,其實(shí)Java的API中還提供了一個(gè)類,這個(gè)類就是Random類是JavaUtil包中的一個(gè)隨機(jī)數(shù)類,里面封裝了大量的方法,他的作用就是幫助我們?nèi)ド梢幌盗械碾S機(jī)數(shù),其中有一個(gè)較為常見的方法,叫做nextInt()方法,看字面上的意思就是下一個(gè)整數(shù)的意思,他是幫助我們生成一個(gè)隨機(jī)的整數(shù),這倆沒有誰好誰壞,看自己哪個(gè)用的比較順手就用哪個(gè)就可以,使用這個(gè)類和學(xué)習(xí)Scanner類似,咱們先來看一下使用的步驟是什么。

  • 導(dǎo)入Random API: import java.util.Random;

  • 創(chuàng)建Random對(duì)象:Random random = new Random();

  • 調(diào)用random的方法獲得隨機(jī)數(shù):

Random類案例

練習(xí):生成[10,100)之間的隨機(jī)數(shù)

所以得出公式:

點(diǎn)贊關(guān)注不迷路~筆芯?


150天打卡day05_隨機(jī)數(shù)的學(xué)習(xí)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
桃园市| 墨脱县| 澄迈县| 崇仁县| 佛山市| 高台县| 锡林郭勒盟| 叶城县| 许昌市| 曲靖市| 本溪市| 青冈县| 贵港市| 霍邱县| 肇东市| 西平县| 林州市| 尚志市| 利津县| 巴彦淖尔市| 大洼县| 个旧市| 唐海县| 天台县| 拉萨市| 辽阳县| 天全县| 三江| 昌江| 林甸县| 东山县| 浦城县| 会东县| 兰西县| 达孜县| 晋城| 梧州市| 海城市| 沙雅县| 韶山市| 雅江县|