本篇将解答下面内容:
- java中创建随机数的两种方法
- 为什么说Random是伪的?
- Random类继承关系
- 为什么需要随机因子?
一、java中创建随机数的两种方式
方式一:
double r= Math.random();
方式二:
Random random=new Random();
其实方式都只有一种,就是方式二。因为方式一底层也是用方式二来实现的。见源码:
public static double random() {
return RandomNumberGeneratorHolder.randomNumberGenerator.nextDouble();
}
private static final class RandomNumberGeneratorHolder {
//这里可以看出,Math类也是通过创建Random对象,通过调用Random对象的nextDouble方法获取随机数的
static final Random randomNumberGenerator = new Random

本文探讨了Java中创建随机数的两种方式,揭示Random是伪随机数的原因,解析了Random类的继承结构和线性同余公式背后的原理。在多线程环境下,推荐使用`ThreadLocalRandom`以保证性能,同时指出Random不适用于加密安全场景。
最低0.47元/天 解锁文章
2002

被折叠的 条评论
为什么被折叠?



