Go:Tips2
目录:
重新记录一下tips
struct排序
type Instance struct {
InstanceId string
InstanceIP string
}
type InstanceSlice []Instance
func (a Instances) Len() int { // 重写 Len() 方法
return len(a)
}
func (a Instances) Swap(i, j int){ // 重写 Swap() 方法
a[i], a[j] = a[j], a[i]
}
func (a Instances) Less(i, j int) bool { // 重写 Less() 方法, 从大到小排序
return a[j].InstanceId < a[i].InstanceId
}
sort.Sort(InstanceSlice(lb.Instances))
struct相等
type S struct {
Field1 int
field2 string
}
func main() {
s1 := S{Field1: 1, field2: "hello"}
s2 := S{Field1: 1, field2: "hello"}
fmt.Println(reflect.DeepEqual(s1, s2))
}