Java獲取隨機數的應用

一、理解Math.random()隨機數
系統默認該隨機數範圍0-1之間的double值,注意:這裏的區間是[0,1)//也就是你取不到1

所以如果你在這裏使用(int)Math.random() 只能得到一個數字0

二、擴大隨機數取值範圍
例:獲取[50,100)之間的隨機整數

int i=(int)(Math.random()*50+50);

//Math.random()只能獲取0-1之間的double值,所以首先要獲取0-50之間的隨機數,所以*50,然後+50,隨機數區間就會變爲 [50,100) ,最後強制轉換爲int類型

三、怎樣獲取端點值
例:獲取[50,100] 之間的隨機整數,注意:這裏要求取到50和100

long i=Math.round(Math.random()*50+50);

//取值範圍改變原理同上,在沒有使用Math.round之前是獲得 [50,100) 的隨機數

//Math.round()是四捨五入取整,所以可以達到所要的結果(區別強制轉換爲int類型:這是直接去整數部分)

相關的取整還有

向上取整:Math.ceil(double a)
向下取整:Math.floor(double a)

有興趣可以去查找相關資料

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章