package utils import ( "math/rand" "time" ) // 打乱随机字符串 func ShuffleString(s *string) { if len(*s) > 1 { b := []byte(*s) rand.Seed(time.Now().UnixNano()) rand.Shuffle(len(b), func(x, y int) { b[x], b[y] = b[y], b[x] }) *s = string(b) } } // 打乱随机slice func ShuffleSliceBytes(b []byte) { if len(b) > 1 { rand.Seed(time.Now().UnixNano()) rand.Shuffle(len(b), func(x, y int) { b[x], b[y] = b[y], b[x] }) } } // 打乱slice int func ShuffleSliceInt(i []int) { if len(i) > 1 { rand.Seed(time.Now().UnixNano()) rand.Shuffle(len(i), func(x, y int) { i[x], i[y] = i[y], i[x] }) } } // 打乱slice interface func ShuffleSliceInterface(i []interface{}) { if len(i) > 1 { rand.Seed(time.Now().UnixNano()) rand.Shuffle(len(i), func(x, y int) { i[x], i[y] = i[y], i[x] }) } }