学习GO第一天

36 阅读1分钟

一直在用 PHP,没怎么接触过 java等其他语言。对 GO 的理解不深入。今天学习了下泛型。mark 一下。一个泛型函数,支持comparable的任意类型排序.比较简单,诸位莫笑。

  func Sort[T comparable](data []T, less func(curr T, next T) bool) {
            sort.Slice(data, func(i, j int) bool {
                return less(data[i], data[j])
            })
  }

  type SearchItem struct {
            Content string
            AtTime  int
  }


utils.Sort(searchItems, func(curr SearchItem, next SearchItem) bool{
        return curr.AtTime < next.AtTime
})