文章摘要
本文介绍了Erlang语言中三种用于生成随机数的方法:
1. **`random:uniform()`**:这是Erlang标准库`random`模块提供的函数,用于生成0到1之间的均匀分布随机浮点数。
2. **`erlang:now()`**:通过获取当前时间作为随机数的来源,适用于大多数不需要高安全性的场景。
3. **`crypto:strong_rand_bytes(N)`**:属于`crypto`模块,能够生成均匀分布的N个字节二进制随机数,适合加密用途。
文章通过示例代码展示了这些方法的使用方式,并强调了它们在不同场景中的适用性。
erlang有三个生产随机数的办法
random:uniform().
这个函数是erlang库random模块提供的。一般都采用这个。
复制代码 代码如下:
1> random:uniform().
0.4435846174457203
erlang:now().
用当前时间作为随机相信很多人都做过吧。所以如果你没有太多的要求,当然也可以这么做。
复制代码 代码如下:
1> erlang:now().
{1419,831449,715000}
crypto:strong_rand_bytes(N).
crypto模块是用于加密的模块。strong_rand_bytes函数能够生成均匀的N个字节的随机数。返回的是二进制数据。如
复制代码 代码如下:
1> <
<<154,106,144,218,65,238,246,170,246,70,252,167>>
2> A.
2590675162
就可以shengcheng,3个32位的随机数,相当于3个随机整数。
© 版权声明
文章版权归作者所有,未经允许请勿转载。