java中的快速实值随机生成器

Snu*_*ill 10 java random double performance generator

java.util.Random.nextDouble()对我来说很慢,我需要一些非常快的东西.

我做了一些谷歌搜索,我发现只有基于整数的快速随机生成器.这里有什么来自区间<0,1的真实数字吗?

tob*_*jdc 26

如果您需要快速访问Java8,我可以推荐java.utils SplitableRandom.它更快(〜两倍快)并具有更好的统计分布.

如果您需要更快或更好的算法,我可以推荐其中一种专门的XorShift变体:

有关这些算法及其质量的信息可以在这个大的PRNG比较中找到.

我做了一个独立的性能比较,你可以在这里找到详细的结果和代码:github.com/tobijdc/PRNG-Performance

TLDR

切勿使用java.util.Random,使用java.util.SplittableRandom.如果您需要更快或更好的PRNG,请使用XorShift变体.