![](/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.