Déballage des éléments de tableau dans Go
Go ne dispose pas de la syntaxe pratique pour décompresser les éléments de tableau directement dans des variables que l'on trouve dans Python. Bien que l'approche initiale de l'interrogateur utilisant une variable intermédiaire fonctionne, elle peut conduire à un code encombré, en particulier dans des scénarios complexes.
Valeurs de retour multiples
Pour résoudre ce problème, la méthode recommandée La solution consiste à créer une fonction qui renvoie plusieurs valeurs. Par exemple, pour diviser une chaîne et décompresser les résultats en deux variables, une fonction comme celle-ci peut être utilisée :
func splitLink(s, sep string) (string, string) { x := strings.Split(s, sep) return x[0], x[1] }
Avec cette fonction, le code suivant peut être utilisé pour décompresser la chaîne divisée :
name, link := splitLink("foo\thttps://bar", "\t")
Arguments de pointeur variadiques
Une autre approche consiste à utiliser des arguments de pointeur variadiques, qui permettent de transmettre plusieurs variables de pointeur à une fonction. et attribué les valeurs d'un tableau. Voici comment cela fonctionne :
func unpack(s []string, vars... *string) { for i, str := range s { *vars[i] = str } }
Pour décompresser un tableau, le code ci-dessous peut être utilisé :
var name, link string unpack(strings.Split("foo\thttps://bar", "\t"), &name, &link)
Cette approche permet de décompresser des tableaux de n'importe quelle taille, mais elle nécessite une déclaration explicite des variables et est considéré comme moins lisible par certains développeurs.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3