Avatar ·

Wie entferne ich ein Element aus einem Slice in Golang? Richtige Methoden und Fallstricke

Hallo zusammen! Ich habe gerade angefangen, Go zu lernen, und bin auf ein Problem bei der Arbeit mit Slices gestoßen. Ich muss ein Element nach Index aus einem Slice entfernen, kann aber keine eingebaute Funktion dafür finden.\n\nHier ist ein Beispiel meines Codes:\n\n```go\npackage main\n\nimport "fmt"\n\nfunc main() {\n fruits := []string{"apple", "banana", "cherry", "date"}\n // Ich möchte "banana" (Index 1) entfernen\n // Wie mache ich das richtig?\n fmt.Println(fruits)\n}\n```\n\nIch habe versucht, dem Element einfach nil zuzuweisen, aber das entfernt es nicht aus dem Slice, sondern setzt nur den Wert zurück:\n\n```go\nfruits[1] = "" // Funktioniert nicht als Entfernung\n```\n\nDann habe ich versucht, einen Slice ohne das gewünschte Element zu erstellen, aber das erzeugt einen neuen Slice, während der ursprüngliche erhalten bleibt:\n\n```go\nnewFruits := append(fruits[:1], fruits[2:]...)\n// Jetzt ist fruits = ["apple"