继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Golang随机值生成算法

代码写到手抽筋
关注TA
已关注
手记 294
粉丝 26
获赞 113

package mainimport (    "crypto/rand"    "fmt")var strstr = []byte("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")func GetUID() string {    data := make([]byte, 16)    _, err := rand.Read(data)    if err != nil {        panic(err)    }    uuid := fmt.Sprintf("%X-%X-%X-%X-%X", data[0:4], data[4:6], data[6:8], data[8:10], data[10:])    return uuid}func GetString(size int) string {    data := make([]byte, size)    out := make([]byte, size)    buffer := len(strstr)    _, err := rand.Read(data)    if err != nil {        panic(err)    }    for id, key := range data {        x := byte(int(key) % buffer)        out[id] = strstr[x]    }    return string(out)}func main(){    fmt.Println(GetUID())    fmt.Println(GetString(8))}

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP