Méthodes de la fonction Go passées en paramètres : les fonctions Go peuvent être transmises en tant que paramètres d'autres fonctions. Le code peut être organisé en morceaux modulaires et réutilisables. Cas pratique : Vous pouvez utiliser la fonction print en paramètre pour imprimer des éléments de slice.
Passer des méthodes de fonction en tant que paramètres dans le langage Go
Les fonctions dans Go sont des citoyens de premier ordre, elles peuvent donc être transmises en tant que paramètres d'autres fonctions. Cela vous permet d'organiser votre code en morceaux modulaires et réutilisables.
Syntaxe
func f(a int, fn func(int)) { fn(a) }
Dans cet exemple, la fonction f
reçoit deux paramètres : un int
et une fonction de type func(int)</ code > fonction. <code>f
函数接收两个参数:一个int
和一个函数类型为 func(int)
的函数。
实战案例:打印切片元素
让我们编写一个函数来打印切片元素,该函数将打印函数作为参数接收。
package main import "fmt" // PrintSlice 使用给定的打印函数打印切片元素 func PrintSlice(s []int, fn func(int)) { for _, v := range s { fn(v) } } func main() { numbers := []int{1, 2, 3, 4, 5} // 使用 lambda 表达式打印元素 PrintSlice(numbers, func(n int) { fmt.Println(n) }) // 使用命名函数打印元素 PrintSlice(numbers, func(x int) { fmt.Printf("%d ", x) }) }
输出:
1 2 3 4 5 1 2 3 4 5
在本例中,PrintSlice
PrintSlice
accepte une tranche et une fonction d'impression. Il parcourt ensuite la tranche et transmet chaque élément à la fonction d'impression. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!