這裏有兩個變化的一個range (start, end)
內生成隨機整數:在Java中,這些隨機數生成不等於相同的範圍嗎?
方法1:
int rand = (int)(Math.random()*(end-start)+1)+start;
方法2:
Random numbergenerator = new Random();
int rand=numbergenerator.nextInt(end-start)+start;
方法2似乎爲我工作。
我問這個問題的原因:我試圖調試我的代碼,當我將我的隨機int
代更改爲方法2時,一切似乎都正常工作。方法1給出了意想不到的結果。
意外的結果來自不同的帖子:但這是這個問題的分心 仍然是here。在這裏,我用方法2替換了mehtod 1,並且一切正常。
所以問題是這些隨機int生成方法不同。 方法1我用這個已經upvoted post.
什麼樣的情況下,他們都可以不同(如果他們不同)?
結果如何出乎意料? – 2013-12-20 02:12:28
隨機數字應該是意想不到的。這纔是重點。 – Eran
「*如果兩者可能不同(如果它們不同),那麼這將是一個例子*」您告訴我們!你觀察到意想不到的結果! –