package utils import ( "encoding/json" ) // 去除slice中的重复元素 func UniqueSliceUInt64(sliceIn []uint64) []uint64 { sliceOut := make([]uint64, 0, len(sliceIn)) m := make(map[uint64]struct{}, len(sliceIn)) for _, i := range sliceIn { if _, ok := m[i]; !ok { m[i] = struct{}{} sliceOut = append(sliceOut, i) } } return sliceOut } func ToString(s interface{}) (string, error) { b, err := json.Marshal(s) if err != nil { return "", nil } return string(b), nil } func SliceToMapUInt64(s []uint64) map[uint64]struct{} { m := make(map[uint64]struct{}, len(s)) for _, i := range s { m[i] = struct{}{} } return m }