失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > golang 切片 slice 去掉重复元素

golang 切片 slice 去掉重复元素

时间:2023-11-23 13:53:24

相关推荐

golang 切片 slice 去掉重复元素

如果传入的是string类型:

//slice去重func removeRepByMap(slc []string) []string {result := []string{} //存放返回的不重复切片tempMap := map[string]byte{} // 存放不重复主键for _, e := range slc {l := len(tempMap)tempMap[e] = 0 //当e存在于tempMap中时,再次添加是添加不进去的,,因为key不允许重复//如果上一行添加成功,那么长度发生变化且此时元素一定不重复if len(tempMap) != l { // 加入map后,map长度变化,则元素不重复result = append(result, e) //当元素不重复时,将元素添加到切片result中}}return result}

如果传入的是int类型:

func removeRepByMap(slc []int) []int {result := []int{} //存放返回的不重复切片tempMap := map[int]byte{} // 存放不重复主键for _, e := range slc {l := len(tempMap)tempMap[e] = 0 //当e存在于tempMap中时,再次添加是添加不进去的,,因为key不允许重复//如果上一行添加成功,那么长度发生变化且此时元素一定不重复if len(tempMap) != l { // 加入map后,map长度变化,则元素不重复result = append(result, e) //当元素不重复时,将元素添加到切片result中}}return result}

当然如果传入的是其它类型,把对应类型改掉即可

如果觉得《golang 切片 slice 去掉重复元素》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。