Wie man zwei Strukturen, Slices oder Maps in Go auf Gleichheit vergleicht
Hallo zusammen! Ich habe gerade angefangen, Go zu lernen und bin auf ein Problem beim Vergleich komplexer Datentypen gestoßen. Ich versuche, zwei Strukturen, zwei Slices und zwei Maps zu vergleichen, erhalte aber unerwartete Ergebnisse.\n\nHier ist ein Beispielcode, der nicht funktioniert:\n\n```go\npackage main\n\nimport "fmt"\n\ntype Person struct {\n Name string\n Age int\n}\n\nfunc main() {\n // Vergleich von Strukturen\n p1 := Person{Name: "Alice", Age: 30}\n p2 := Person{Name: "Alice", Age: 30}\n fmt.Println("Sind die Strukturen gleich?", p1 == p2) // Gibt true aus, aber das ist nicht immer der Fall\n\n // Vergleich von Slices\n slice1 := []int{1, 2, 3}\n slice2 := []int{1, 2, 3}\n // fmt.Println(slice1 == slice2) // Compiler-Fehler: slice can only be compared to nil\n\n // Vergleich von Maps\n map1 := map[string]int{"a": 1, "b": 2}\n
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs