Avatar ·

Comment obtenir le dernier élément d'une slice en Go ?

Bonjour à tous ! Je viens de commencer à apprendre Go et j'ai rencontré un problème. J'ai une slice de strings `names := []string{"Alice", "Bob", "Charlie"}`. J'ai besoin d'obtenir le dernier élément de cette slice pour l'afficher ou le traiter. En Python, j'écrirais `names[-1]` et tout fonctionnerait. Mais en Go, cette écriture provoque une erreur de compilation : `invalid slice index -1`. J'ai cherché sur Google et j'ai découvert qu'en Go, on ne peut pas utiliser d'index négatifs. Pour l'instant, je n'ai trouvé que cette méthode bancale : ```go package main import "fmt" func main() { names := []string{"Alice", "Bob", "Charlie"} last := names[len(names)-1] fmt.Println(last) } ``` Cela fonctionne, mais cela me semble peu fiable, surtout si la slice est vide. Hier, j'ai eu un bug : j'ai oublié de vérifier que la slice n'était pas vide, et le programme a planté avec une panique `panic: runtime error: index out of range [0]`. Dites-moi, comment obtenir le dernier élément d'une slice de manière correcte et sécurisée ? Existe-t-il une fonction intégrée en Go pour cela ?