美文网首页go学习
Golang生成随机数的方法总结

Golang生成随机数的方法总结

作者: 大雁儿 | 来源:发表于2017-08-14 11:47 被阅读27次

生成区间随机数

func RandInt(min, max int) int {
    if min >= max || min == 0 || max == 0 {
        return max
    }
    return rand.Intn(max-min) + min
}

生成指定区间随机数(包括纯数字/纯字母/随机)


const (
    KC_RAND_KIND_NUM   = 0  // 纯数字
    KC_RAND_KIND_LOWER = 1  // 小写字母
    KC_RAND_KIND_UPPER = 2  // 大写字母
    KC_RAND_KIND_ALL   = 3  // 数字、大小写字母
)

// 随机字符串
func Krand(size int, kind int) []byte {
    ikind, kinds, result := kind, [][]int{[]int{10, 48}, []int{26, 97}, []int{26, 65}}, make([]byte, size)
    is_all := kind > 2 || kind < 0
    rand.Seed(time.Now().UnixNano())
    for i :=0; i < size; i++ {
        if is_all { // random ikind
            ikind = rand.Intn(3)
        }
        scope, base := kinds[ikind][0], kinds[ikind][1]
        result[i] = uint8(base+rand.Intn(scope))
    }
    return result
}

相关文章

  • Golang生成随机数的方法总结

    生成区间随机数 生成指定区间随机数(包括纯数字/纯字母/随机)

  • golang踩坑---批量生成随机数重复问题

    今天项目里面遇到一个问题,一个业务需要动态生成多个随机数和随机字符串,都知道golang中生成随机数的核心是设置随...

  • Golang:随机数

    golang 随机数有一个很有趣的地方,如果我们不自行定义随机数种子的话,每次生成的随机数都是一样的。 比如 fo...

  • yii可逆加密解密

    生成随机数 方法:generateRandomString用法: 加密 方法:encryptByPassword用...

  • JavaScript生成6位随机数验证码

    相关知识点:Math.random方法 用于生成0~1之间的随机数toString方法 用于将生成的随机数转换成字...

  • Java 常用类 09. Java Random 类

    简介:生成随机数 构造方法:Random(); 创建一个新的随机数生成器。Random(long seed); 使...

  • golang 生成随机数

    真随机和伪随机概念 先大概了解一下伪随机和真随机的概念。根据密码学原理,要想对一个“随机数”进行随机性检验有以下几...

  • Python小函数

    生成随机数 生成指定范围内的浮点数: 参考链接:python生成随机数方法小结 进制转换 二进制到十进制:

  • java如何生成1到100之间的随机数

    java如何生成1到100之间的随机数 可以使用random()方法,该方法用于返回一个随机数,随机数范围为 0....

  • java生成随机数的方法是什么

    java生成随机数的方法是什么 我们可以使用Java中提供的Math类来生成随机数。 Math类在java.lan...

网友评论

    本文标题:Golang生成随机数的方法总结

    本文链接:https://www.haomeiwen.com/subject/iwfurxtx.html