Golangで構造体の並び替えをする方法とは
Golangでは、sortパッケージによって構造体の配列を並べ替えることができます。
また、構造体の配列を並べ替えるには、それらをソートするために使用する比較関数を定義する必要があります。
そしてこの関数は、2つの構造体を順に受け取り、どちらが先に並ぶべきかを返す必要があります。
Golangで構造体の並び替えをするコード例
以下はPersonという構造体が複数入ったスライス(people)内で、各PersonのAgeプロパティ順に並び替える処理です。
type Person struct {
Name string
Age int
}
people := []Person{
{"Bob", 31},
{"Alice", 25},
{"Charlie", 35},
}
sort.Slice(people, func(i, j int) bool {
return people[i].Age < people[j].Age
})
参考: