服务器之家

服务器之家 > 正文

golang生成指定位数的随机数的方法

时间:2020-05-29 11:50     来源/作者:TigerwolfC

1.随机数

随机数,是使用一个确定性的算法计算出来随机数序。在程序开发中经常需要产生随机数,如随机数验证码登陆、作为唯一身份标识数据等等。

2.rand库

golang中产生随机数主要有两个包,分别是“math/rand”和“crypto/rand”。
“math/rand”的rand包实现了伪随机数生成器。
"crypto/rand"的rand包实现了用于加解密的更安全的随机数生成器。

3.生成指定位数随机数

以生成六位随机数为例

?
1
2
3
4
5
6
7
8
9
10
11
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() )
}

输出结果:

golang生成指定位数的随机数的方法

同理生成八位随机数只需修改产生随机数参数即可

?
1
2
3
func CreateCaptcha() string {
  return fmt.Sprintf("%08v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(100000000))
}

依次类推,需要其他指定位数的随机数时均可通过修改上述参数产生。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/wade3015/article/details/83052122

标签:

相关文章

热门资讯

歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部