golang生成指定位数的随机数的方法
程序员文章站
2022-04-28 17:20:55
1.随机数
随机数,是使用一个确定性的算法计算出来随机数序。在程序开发中经常需要产生随机数,如随机数验证码登陆、作为唯一身份标识数据等等。
2.rand库
golang中产生随机...
1.随机数
随机数,是使用一个确定性的算法计算出来随机数序。在程序开发中经常需要产生随机数,如随机数验证码登陆、作为唯一身份标识数据等等。
2.rand库
golang中产生随机数主要有两个包,分别是“math/rand”和“crypto/rand”。
“math/rand”的rand包实现了伪随机数生成器。
"crypto/rand"的rand包实现了用于加解密的更安全的随机数生成器。
3.生成指定位数随机数
以生成六位随机数为例
package main import ( "fmt" "math/rand" ) func createcaptcha() string { return fmt.sprintf("%06v", rand.new(rand.newsource(time.now().unixnano())).int31n(1000000)) } func main(){ fmt.println(createcaptcha() ) }
输出结果:
同理生成八位随机数只需修改产生随机数参数即可
func createcaptcha() string { return fmt.sprintf("%08v", rand.new(rand.newsource(time.now().unixnano())).int31n(100000000)) }
依次类推,需要其他指定位数的随机数时均可通过修改上述参数产生。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。