Junior — Middle
Kann man eine Funktion als Wert in eine Datenstruktur map übergeben?
sobes.tech KI
Antwort von AI
Ja, in Go können Funktionen als Werte in einer Datenstruktur map übergeben werden, da Funktionen First-Class-Typen sind.
Beispiel:
package main
import "fmt"
func main() {
// Wir deklarieren eine Map, bei der der Schlüssel eine Zeichenkette ist und der Wert eine Funktion, die einen int akzeptiert und einen int zurückgibt
funcMap := make(map[string]func(int) int)
// Funktionen zur Map hinzufügen
funcMap["square"] = func(x int) int { return x * x }
funcMap["double"] = func(x int) int { return x * 2 }
// Funktionen aus der Map verwenden
fmt.Println(funcMap["square"](5)) // 25
fmt.Println(funcMap["double"](5)) // 10
}
Auf diese Weise kann man Funktionen in einer Map speichern und anhand des Schlüssels aufrufen.