回覆列表
-
1 # 打怪練級
-
2 # EraWalker
這行程式碼指讓系統隨機選取大於等於 0.0 且小於 100.0 的偽隨機數。
解釋分析如下:
1、函式:Math.random();
2、功能:產生大於等於 0 小於 1 的一個隨機數;
3、公式:Math.random()*(n-m)+m,生成大於等於m小於n的隨機數;
例:設定一個隨機1到3(取不到3)的變數
int num = (int)(Math.random()*2+1);
-
3 # 使用者4446060630248843
這裡面涉及到運算子的優先順序, (int)Math.random()*14 Math.random() 會返回一個 0-1 之間的隨機小數,使用 (int)強制轉換的話就等於 0 了,0*14 = 0 所以會一直返回固定值 而 Math.round(Math.random()*14) 中,Math.random()*14 會返回一個 0-14 之間的隨機數,然後再進行四捨五入操作,所以也是隨機的
Math.random()產生一個[0,1)之間的double型浮點數。
用法:
public class test{
public static void main(){
double r=Math.random();
System.out.println("test:"+r);
}
}