![](/img/trans.png)
[英]Using math.random to generate a certain amount of random numbers in java
[英]Creating an object of Random class or using Math.random() in order to generate random numbers
導入 java.util.Random 后,您可以通過兩種方式生成隨機整數和隨機雙精度數。
您可以創建 Random 類的實例
Random randomGenerator = new Random();
然后用它生成一個大於或等於0但小於10的隨機整數或雙精度數
int randomInteger = randomGenerator.nextInt(10);
double randomDouble = randomGenerator.nextDouble(10);
你也可以使用 Math.random()
int randomInteger = (int)(Math.random() * 10)
double randomDouble = Math.random() * 10
我認為這兩種方法都給出了完全相同的結果。 這兩種方法中的一種是否比另一種更受歡迎?
Math.random() 使用 Random 類。 它基本上是在 Math 類的 Random 對象上調用 nextDouble() 。
然而,第一種方法肯定更容易理解和使用。 並且有比 Math 類更多的選擇。 因此,如果您需要大量隨機數或者需要雙精度以外的類型,我會選擇 Random 類。 當您只需要 0 和 1 之間的雙精度值時,我會使用 Math.random()。
所以基本上方法的工作方式沒有區別,它們都使用 Random 類。 因此,您使用的兩者中的哪一個取決於我上面所說的情況。
從關於隨機方法的 Math 類的 javadoc :
當這個方法第一次被調用時,它會創建一個新的偽隨機數生成器,就像表達式一樣
新的 java.util.Random()
鏈接到 Math.random() 上的 javadoc 頁面: https : //docs.oracle.com/javase/7/docs/api/java/lang/Math.html#random()
我希望這有幫助 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.