golang 数组元素为struct去重

数组去重例子已经很多,这是补充一种数组元素为struct的去重方法:元素为struct的情况无法进行字符串排序,故通过两层循环逐一进行比对,而不是相邻元素进行比对

func RemoveSliceMap(a []interface{}) (ret []interface{}){
	n := len(a)
	for i:=0; i < n; i++{
		state := false
		for j := i+1 ; j < n; j++{
			if (j > 0 && reflect.DeepEqual(a[i],a[j])){
				state = true
				break
			}
		}
		if !state {
			ret = append(ret, a[i])
		}
	}
	return
}

猜你喜欢

转载自blog.csdn.net/weixin_40943560/article/details/84578627
今日推荐