package randomx import ( "errors" "math/rand" "time" ) // 生成指定位数的随机字符串 func RandomStr(length int) (string, error) { if length <= 0 { return "", errors.New("位数必须大于0") } str := "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ黄新云" bytes := []rune(str) // 初始化参数,并赋予空间 var result = make([]rune, 0, length) // 初始化随机因子 r := rand.New(rand.NewSource(time.Now().UnixNano())) for i := 0; i < length; i++ { result = append(result, bytes[r.Intn(len(bytes))]) } return string(result), nil } // 生成指定空间的随机数 func RandomInt(min, max int) (int, error) { c := max - min if c <= 0 { return 0, errors.New("max值需要大于min") } // 初始化随机因子 r := rand.New(rand.NewSource(time.Now().UnixNano())) res := r.Intn(c) return min + res, nil }