package xrand import ( "math/rand" "time" ) func init() { rand.New(rand.NewSource(time.Now().UnixNano())) } var Int = rand.Int func Intn(n int) int { return rand.Intn(n) } func Int31() int32 { return rand.Int31() } func Int31n(n int32) int32 { return rand.Int31n(n) } func Int63() int64 { return rand.Int63() } func Int63n(n int64) int64 { return rand.Int63n(n) } func Uint32() uint32 { return rand.Uint32() } func Uint64() uint64 { return rand.Uint64() } func Float32() float32 { return rand.Float32() } func Float64() float64 { return rand.Float64() } func Perm(n int) []int { return rand.Perm(n) } func Read(p []byte) (n int, err error) { return rand.Read(p) } func Shuffle[T any](slice []T) { rand.Shuffle(len(slice), func(i, j int) { slice[i], slice[j] = slice[j], slice[i] }) } // RandomInt64 随机生成一个[min, max]之间的整数 func RandomInt64(min, max int64) int64 { return Int63n(max-min) + min }