Comment concaténer une slice de strings en une seule chaîne en Go ?
Bonjour à tous ! Je viens de commencer à apprendre Go et j'ai rencontré un problème en travaillant avec les strings. J'ai une slice de strings, par exemple :
>>
words := []string{"Hello", "world", "from", "Go"}
J'ai besoin de concaténer toutes ces strings en une seule, en les séparant par un espace, pour obtenir le résultat : `"Hello world from Go"`. Dans d'autres langages (par exemple en Python), j'utiliserais simplement `" ".join(words)`, mais en Go il n'y a pas de telle méthode. J'ai essayé d'écrire une boucle manuellement, mais cela devient lourd et je ne suis pas sûr que ce soit efficace :
result := ""
for i, word := range words {
if i > 0 {
result += " "
}
result += word
}
Cela fonctionne, mais j'ai entendu dire que la concaténation de strings avec `+=` dans une boucle peut être lente à cause des allocations mémoire constantes. Existe-t-il en Go un moyen intégré de le faire de manière élégante et rapide ? Peut-être une fonction de la bibliothèque standard ? Je serais reconnaissant pour des exemples de code et une explication.
<<Utilisez strings.Join
No answers yet.
Connectez-vous pour laisser une réponse