Maison > Article > développement back-end > Puis-je saisir explicitement une variable dans l'instruction d'initialisation d'une boucle Go For ?
Une question courante pour les débutants en Go concerne la déclaration de variable dans l'instruction d'initialisation d'une boucle for. Alors que vous pouvez écrire une boucle comme for i := 0; je &Lt ; 10 ; i , spécifier explicitement un type dans l'instruction d'initialisation semble impossible.
Tenter de spécifier un type directement dans l'initialisation, comme pour var i int64 = 0; je &Lt ; 10 ; je , entraînera une erreur. Contrairement aux attentes, vous devez déclarer la variable en dehors de l'initialisation de la boucle et l'attribuer à l'intérieur :
var i int64 for i = 0; i < 10; i++ { // i here is of type int64 }
La spécification du langage pour une boucle for indique que l'instruction d'initialisation peut être une courte déclaration de variable, qui attribue un valeur (par exemple, i := 0) mais pas une déclaration de variable complète (var i = 0).
La raison derrière cela est probablement de maintenir la simplicité du langage. Cependant, il convient de noter que vous pouvez obtenir un résultat similaire en utilisant une conversion de type :
for i := int64(0); i < 10; i++ { // i here is of type int64 }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!