3 回答
TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊
不要在每次要生成 Double 時(shí)都創(chuàng)建 Random 的新實(shí)例。
您可以創(chuàng)建一個(gè)實(shí)例,然后在需要新的替身時(shí)調(diào)用它。
Random rand = new Random(System.currentTimeMillis());
// loop starts here
double randomNumber = Math.floor(inputParam1 * rand.nextDouble());
// If you want an integer up to inputParam1 as it seems, you can do:
int randomInt = (int) randomNumber;
您也可以Math.random()像已經(jīng)建議的那樣使用。
TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超8個(gè)贊
將下面的代碼轉(zhuǎn)換為 int 是沒有意義的。
Math.floor(inputParam1 * (new Random(System.currentTimeMillis())).nextDouble()))
請檢查這個(gè)答案Using Random Number Generator with Current Time vs without
上面鏈接中最重要的部分:
如果你希望你的隨機(jī)序列在運(yùn)行之間是相同的,你可以指定一個(gè)種子。
TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
我不知道你為什么要把它轉(zhuǎn)換成 int
雙隨機(jī)數(shù)=新隨機(jī)(System.currentTimeMillis()).nextDouble();這將給出一個(gè)介于 0 和 1 之間的隨機(jī)雙數(shù)
添加回答
舉報(bào)
