Rumah > Artikel > pembangunan bahagian belakang > Cara menggunakan pakej isihan untuk menyusun dalam golang
Pelaksanaan pengisihan dalam bahasa Go dilaksanakan terutamanya melalui pakej isihan Pakej isihan menyediakan antara muka pengisihan standard, membolehkan kami mengisih pelbagai jenis data dengan mudah. Artikel ini akan memperkenalkan cara menggunakan pakej isihan untuk menyusun dalam golang.
Prinsip pelaksanaan pakej isihan
Pakej isihan terutamanya melaksanakan pengisihan. Antara muka antara muka Ia mempunyai tiga kaedah:
Pakej isihan menyediakan fungsi berikut untuk pengisihan:
Kod Contoh
Berikut ialah beberapa kod sampel untuk mengisih kepingan jenis int:
package main import ( "fmt" "sort" ) func main() { data := []int{9, 6, 3, 8, 5, 2, 7, 4, 1} sort.Ints(data) fmt.Println(data) }
Outputnya ialah:
[1 2 3 4 5 6 7 8 9]
Berikut ialah kod sampel untuk mengisih menggunakan isihan. Antara muka antara muka:
package main import ( "fmt" "sort" ) type Person struct { Name string Age int } type ByName []Person func (this ByName) Len() int { return len(this) } func (this ByName) Less(i, j int) bool { return this[i].Name < this[j].Name } func (this ByName) Swap(i, j int) { this[i], this[j] = this[j], this[i] } func main() { people := []Person{ {"Bob", 31}, {"John", 42}, {"Jane", 29}, {"Michael", 17}, {"Chris", 51}, {"Sarah", 37}, } sort.Sort(ByName(people)) fmt.Println(people) }
Hasil output ialah:
[{Bob 31} {Chris 51} {Jane 29} {John 42} {Michael 17} {Sarah 37}]
Kod di atas mula-mula mentakrifkan badan struktur Orang dan Jenis Nama. Jenis ByName melaksanakan tiga kaedah jenis. Antara muka antara muka, yang digunakan untuk memberitahu pakej isihan cara membandingkan dua elemen dan cara menukar elemen. Kemudian pembolehubah orang ditakrifkan untuk menyimpan data jenis Orang. Akhir sekali, fungsi sort.Sort dipanggil untuk mengisih orang dalam tertib menaik mengikut nama dan mengeluarkan hasilnya.
Ringkasan
Artikel ini memperkenalkan kaedah menggunakan pakej isihan untuk mengisih dalam golang, prinsip pelaksanaan pakej isihan dan beberapa kod sampel. Untuk jenis data diisih, kita hanya perlu melaksanakan tiga kaedah dalam isihan. Antara muka pakej sudah menyediakan fungsi pengisihan untuk jenis data biasa seperti int, float64 dan rentetan Apabila menggunakannya, anda hanya perlu panggil Can.
Atas ialah kandungan terperinci Cara menggunakan pakej isihan untuk menyusun dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!