今天我主要是想往邮箱发送一条自动生成的四位数,于是发现了go里面自带的这几个函数,展示代码如下:
package common
import (
"fmt"
"math/rand"
"time"
)
func Createcode() string{
return fmt.Sprintf("%04v",rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(10000))//这里面前面的04v是和后面的1000相对应的
}
也就是说你如果想生成一个四位数的话,在Int31n()里面的参数改成10000就可,等于在10000里面随机生成一个四位数。
具体函数解析:
rand.NewSource(time.Now().UnixNano())//使用当前的纳秒生成一个随机源,也就是随机种子
rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(10000))//生成一个rand