https://studygolang.com/articles/12944
1.不同类型的值不会深度相等
2.当两个数组的元素对应深度相等时,两个数组深度相等
3.当两个相同结构体的所有字段对应深度相等的时候,两个结构体深度相等
4.当两个函数都为nil时,两个函数深度相等,其他情况不相等(相同函数也不相等)
5.当两个interface的真实值深度相等时,两个interface深度相等
6.go中map的比较需要同时满足以下几个
- 1.两个map都为nil或者都不为nil,并且长度要相等
- 2.相同的map对象或者所有key要对应相同
- 3.map对应的value也要深度相等
7.指针,满足以下其一即是深度相等
8.切片,需要同时满足以下几点才是深度相等
- 1.两个切片都为nil或者都不为nil,并且长度要相等
- 2.两个切片底层数据指向的第一个位置要相同或者底层的元素要深度相等