Meluluskan fungsi ke fungsi Go membolehkan modulariti dan kebolehgunaan semula. Sintaks asas dicapai dengan mentakrifkan fungsi yang menerima fungsi sebagai parameter. Penggunaan lanjutan termasuk: penutupan, fungsi tertib lebih tinggi dan penapisan data.
Petua untuk menghantar fungsi sebagai parameter dalam bahasa Go
Dalam bahasa Go, menghantar fungsi sebagai parameter ialah ciri yang berkuasa dan fleksibel. Ia membolehkan anda mencipta komponen modular dan boleh guna semula dalam kod anda.
Basic Syntax
Sintaks asas untuk melepasi fungsi sebagai parameter adalah seperti berikut:
func main() { f := func(a, b int) int { return a + b } sum := process(f, 10, 20) fmt.Println(sum) // 输出:30 } func process(f func(int, int) int, a, b int) int { return f(a, b) }
digunakan penggunaan lebih lanjut untuk melewati fungsi sebagai parameter termasuk:
closure:Kes praktikal biasa menggunakan fungsi pemindahan sebagai parameter ialah penapisan data. Coretan kod berikut menunjukkan fungsi yang menapis sekeping rentetan, menghantar fungsi sebagai hujah untuk menentukan sama ada untuk mengekalkan setiap elemen:
func main() { data := []string{"a", "b", "c", "d", "e"} filtered := filter(data, func(s string) bool { return strings.Contains(s, "a") }) fmt.Println(filtered) // 输出:["a"] } func filter(data []string, f func(string) bool) []string { result := []string{} for _, s := range data { if f(s) { result = append(result, s) } } return result }
Kesimpulan
Melepasi fungsi sebagai hujah ialah cara terbaik untuk mencipta fleksibel dan modular modul dalam Go Mekanisme yang berkuasa untuk mengoptimumkan kod anda. Dengan memahami sintaks dan penggunaan lanjutannya, anda boleh membuka kunci potensi penuhnya.
Atas ialah kandungan terperinci Petua untuk menghantar fungsi sebagai parameter dalam Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!