java转go,还不会太会
<a href="/user/polaris" title="@polaris">@polaris</a> 学会了学会了,实现了sort包里面的Sort方法里面的三个函数就可以进行自定义排序了
```go
package main
import (
"fmt"
"sort"
)
type myInt64 []int64
func (p myInt64) Len() int { return len(p) }
func (p myInt64) Less(i, j int) bool { return p[i] < p[j] }
func (p myInt64) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
func main() {
ss := []int64{12, 54, 23, 234, 66, 1, 21, 123}
sort.Sort(myInt64(ss))
fmt.Println(ss)
}
```
感谢
#2
更多评论
go中的方法也是可以传入的,类似java中的lambda。 所有你可以直接这样做
```
package test
import (
"fmt"
"sort"
"testing"
)
func TestSort(t *testing.T) {
ss := []int64{12, 54, 23, 234, 66, 1, 21, 123}
sort.SliceStable(ss, func(i, j int) bool {
return ss[i]<ss[j]
})
fmt.Println(ss)
}
```
#3