两个切片如何去重
func sliceUniq(lenSlice, shortSlice []string) (process []string) {
lenMap := make(map[string]bool, len(lenSlice))
shortMap := make(map[string]bool, len(shortSlice))
for _, v := range lenSlice { // []string{"A", "b", "c", "d"}
lenMap[v] = false
}
for _, v := range shortSlice { // []string{"c", "b"}
shortMap[v] = false
}
for k, _ := range shortMap {
if _, ok := lenMap[k]; ok {
delete(lenMap, k)
}
}
for k, _ := range lenMap {
process = append(process, k)
}
return
}
func main() {
res:=sliceUniq([]string{"A", "b", "c", "d"}, []string{"c", "b"})
fmt.Println(res)
// [d A]
}