Avatar ·

Wie man den Typ einer Variable in Go bestimmt: Methoden und Beispiele

Hallo zusammen! Ich habe gerade angefangen, Go zu lernen, und bin auf ein Problem gestoßen. In anderen Sprachen wie Python oder JavaScript kann ich den Typ einer Variable leicht mit type() oder typeof herausfinden. Aber in Go finde ich keine einfache Möglichkeit, das zu tun.\n\nHier ist ein Beispiel, das mich verwirrt:\n\n```go\npackage main\n\nimport "fmt"\n\nfunc main() {\n var x interface{}\n x = 42\n // Wie kann ich herausfinden, dass x ein int ist?\n fmt.Println(x) // Gibt einfach 42 aus\n}\n```\n\nIch verstehe, dass Go eine statisch typisierte Sprache ist und die Typen normalerweise zur Compile-Zeit bekannt sind. Aber was mache ich, wenn ich mit einem leeren interface (interface{}) oder mit Daten aus JSON arbeite? Zum Beispiel erhalte ich eine Antwort von einer API, die verschiedene Datentypen enthalten kann: Strings, Zahlen, boolesche Werte. Wie kann ich programmatisch bestimmen, welcher Typ gespeichert ist?