一、理解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)
有興趣可以去查找相關資料