请看这个游乐场。我想要的是安静而简单的:我想对所有“记录”降序进行排序。我不知道怎么办。原因是我的结构包含一个或多个记录,但我不确定如何处理。(这可以正常工作)



1> VonC..:

此示例在以下方面效果更好:

type ById []Record
sort.Sort(sort.Reverse(ById(records.Records)))

Len()Swap()Less()RecordRecords

输出:

{{ records} 
  [{{ record} 64321 http://golang.com} 
   {{ record} 3456 http://www.lommers.org/sampleurl} 
   {{ record} 4 http://www.this-is-my-url.com}]} 

正如我在“ 如何避免重新实现sort.Interface用于类似golang结构的方法 ”中提到的那样,这随着Go 1.8的更改而改变,并提交ad26bb5:

Less()
a := ById(records.Records)
sort.Slice(a, func(i, j int) bool {
    return a[i] > a[j]
})