前言
Go 切片排序通過匿名函數來快速實現
代碼示例
package main
import (
"sort"
"fmt"
"strings"
)
func main() {
// 切片排序
intSlice := []int{
1, 3, 4, 2, 55,
}
sort.Slice(intSlice, func(i, j int) bool {
return i > j
})
fmt.Println(intSlice)
// 切片嵌套字典排序
result := []map[string]interface{}{
{"sort_time": 1},
{"sort_time": 2},
}
sort.Slice(result, func(i, j int) bool {
return result[i]["sort_time"].(int) > result[j]["sort_time"].(int)
})
fmt.Println(result)
// 將切片轉爲,號分割的字符串
strSlice := []string{"a", "b", "c"}
strJoin := strings.Join(strSlice, ",")
fmt.Println(strJoin)
}
結果
[55 2 4 3 1]
[map[sort_time:2] map[sort_time:1]]
a,b,c